[PHP] Réordonner un tableau [RESOLU]

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par Babylon, 12 Mars 2010.

  1. Babylon
    Babylon WRInaute discret
    Inscrit:
    18 Octobre 2006
    Messages:
    170
    J'aime reçus:
    0
    Bonjour !

    Je me prend la tête sur problème php depuis qques heures et je viens demander votre aide.

    Voilà mon problème :

    J'ai un tableau multidimensionnelle comme construit comme cela :
    Code:
    Array
    (
        [0] => Array
            (   [reference] => xxxx1
                [quantite] => x1
                [prix] => xxx1
            )
        [1] => Array
            (  [reference] => xxxx2
                [quantite] => x2
                [prix] => xxx2
            )
        [2] => Array
            (   [reference] => xxxx3
                [quantite] => x3
                [prix] => xxx3
            )
    ...
    )
    Je voudrais réordonner ce tableau avec une liste de nouvelles clés.
    Par exemple je reçois
    Code:
    $neworder=array (2,0,1);
    
    Je voudrais donc que mon tableau [2] passe en [0] celui en [0]passe en [1] etc...

    J'espère avoir été clair.
    Merci d'avance pour votre aide :wink:

    Bye,
     
  2. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 579
    J'aime reçus:
    0
    Re:
    PHP:
     Réordonner un tableau[/b]

    Quelque-chose comme:

    [
    code]
    function 
    myfunc($a)
    {
      return 
    $oldarray[$a];
    }

    $new_array array_map("myfunc",$neworder)
    [/
    code]

    peut-être?

    Jacques.
     
  3. seebz
    seebz WRInaute impliqué
    Inscrit:
    15 Avril 2007
    Messages:
    722
    J'aime reçus:
    0
    Re:
    PHP:
     Réordonner un tableau[/b]

    y a-t-il une logique quelconque dans le nouvel ordre ?
     
  4. Babylon
    Babylon WRInaute discret
    Inscrit:
    18 Octobre 2006
    Messages:
    170
    J'aime reçus:
    0
    Re:
    PHP:
     Réordonner un tableau[/b]

    @
    Jcaron Merci Jacques je vais essayé ça !

    @
    seebz La seule logique est qu'il n'y a qu'un seul changement d'ordre à chaque fois
    Ainsi  $neworder pourra être 
    $neworder=array(2,0,1,)

    mais pas 
    $neworder
    =array(2,1,0)

    J'explique ce que je veux faire ca aidera sans doute :
    Je veux adapter ce plugin jquery à une aplication
    [url=http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/]http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/[/url]
    Voir le 2ème tableau pour voir ce que pourrait être $neworder
     
  5. milkiway
    milkiway WRInaute accro
    Inscrit:
    3 Février 2004
    Messages:
    4 196
    J'aime reçus:
    0
    Re:
    PHP:
     Réordonner un tableau[/b]

    [
    url=http://php.net/manual/fr/function.sort.php]http://php.net/manual/fr/function.sort.php[/url] non ?
     
  6. seebz
    seebz WRInaute impliqué
    Inscrit:
    15 Avril 2007
    Messages:
    722
    J'aime reçus:
    0
    Re:
    PHP:
     Réordonner un tableau[/b]

    Pour une fonctionj'avais fait un truc un peu tordu.
    Je sais pas si c'
    est adapté à ton cas mais voici toujours la source :

    [
    code]            // Insère le caractère au bon endroit
                    
    array_splice(
                        
    $decoded$icount($decoded),
                        
    array_merge(array($n), array_slice($decoded$icount($decoded)))
                    );
    [/
    code]
    Ca insère le caractère [u]$n[/uà l'emplacement [u]$i[/u] du tableau [u]$decoded[/u]

    Bonne chance  :lol:
     
  7. Babylon
    Babylon WRInaute discret
    Inscrit:
    18 Octobre 2006
    Messages:
    170
    J'aime reçus:
    0
    Re:
    PHP:
     Réordonner un tableau[/b]

    La solution de Jacques fonctionne (même si j'ai pas tout compris à cette fonction :-D) !!! \o/

     Merci beaucoup à toi ainsi qu'
    aux autres pour vos réponses rapides et efficaces ;-) !

    Bye,
     
  8. seebz
    seebz WRInaute impliqué
    Inscrit:
    15 Avril 2007
    Messages:
    722
    J'aime reçus:
    0
    Cool, c'est vrai que la function de jacques rend bien..

    Moi par contre, j'aime bien me prendre la tête :p
     
  9. Babylon
    Babylon WRInaute discret
    Inscrit:
    18 Octobre 2006
    Messages:
    170
    J'aime reçus:
    0
    J'ai un peu la même tendance que toi puisque au tout début j'étais aussi parti sur des combinaisons de array_merge/_slice/_splice à tout va.

    Quand je vois la simplicité de la solution de Jacques ... j'ai encore bcp de travail :roll: :D
     
  10. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 579
    J'aime reçus:
    0
    C'est juste parce que je programme beaucoup en perl, et que map est probablement l'une des fonctions les plus utilisées (la syntaxe est plus pratique en perl).

    Ceci dit, tout dépend comment tu obtiens ton tableau qui donne l'ordre: il est a priori lui-même obtenu par des combinaisons de splice, slice, merge, whatever. Donc au bout du compte ça peut être une bonne idée de le faire directement sur le tableau final.

    Jacques.
     
Chargement...
Similar Threads - [PHP] Réordonner tableau Forum Date
Astuce [PHP] Récolter ville, pays du visiteur Développement d'un site Web ou d'une appli mobile 9 Mars 2021
[PHP] Détecter le navigateur / bot en fonction du HTTP_USER_AGENT Développement d'un site Web ou d'une appli mobile 14 Septembre 2019
[PHP] Détecter le navigateur / bot en fonction du HTTP_USER_AGENT Développement d'un site Web ou d'une appli mobile 12 Janvier 2017
[PHP] Cookie vide dans une fonction, complet juste avant ou après Développement d'un site Web ou d'une appli mobile 25 Novembre 2014
[php] Cookie d'un domaine vers un sous-domaine Développement d'un site Web ou d'une appli mobile 29 Août 2014
[PHP]Cci mails Développement d'un site Web ou d'une appli mobile 18 Août 2014
[PHP] gethostbyname Développement d'un site Web ou d'une appli mobile 15 Février 2014
[PHP] file_get_contents retourne un "Connection timed out" Développement d'un site Web ou d'une appli mobile 14 Février 2014
[PHP] Regex Complexe Développement d'un site Web ou d'une appli mobile 29 Octobre 2013
[PHP] Formulaire dynamique Développement d'un site Web ou d'une appli mobile 2 Mai 2013
[php] error suite à code antiduplication Développement d'un site Web ou d'une appli mobile 5 Février 2013
[PHP] Condition et include Développement d'un site Web ou d'une appli mobile 31 Janvier 2013
[PHP] comprendre ce code pour pseudo-frame Développement d'un site Web ou d'une appli mobile 28 Décembre 2012
[PHP] Requête très lente Développement d'un site Web ou d'une appli mobile 22 Septembre 2012
[PHP] Question technique Regex Développement d'un site Web ou d'une appli mobile 28 Juillet 2012
[PHP] file_get_contents sur le serveur même... Développement d'un site Web ou d'une appli mobile 9 Juillet 2012
[PHP] FILTER_VALIDATE_IP et REMOTE_ADDR Développement d'un site Web ou d'une appli mobile 8 Juillet 2012
[PHP] Requête PDO à modifier Développement d'un site Web ou d'une appli mobile 13 Mai 2012
[PHP] Détecter l'OS, le navigateur et la langue [Résolu] Développement d'un site Web ou d'une appli mobile 4 Mars 2012
[Php] Vérifier la présence d'un slash en fin d'url Développement d'un site Web ou d'une appli mobile 2 Mars 2012