2015-08-14 1 views
0

J'ai un tableau multidimensionnel. Je veux supprimer les clés parentes [0], [1], [2] ..... Quelle est la meilleure façon de supprimer les clés parentes dans un tableau multidimensionnel? Par exemple, j'ai ce codeSupprimer les clés parentes du tableau multidimensionnel

Array 
(
[0] => Array 
    (
     [comment_tN9l43iUjZLNap4Dbkf7w8Whb3] => Array 
      (
       [required] => This field is required 
      ) 

    ) 

[1] => Array 
    (
     [checkbox_cNVyw1lV0eVrYdeymth2c90AW] => Array 
      (
       [required] => Select Gender 
       [minlength] => Please select at least 2 items. 
       [maxlength] => Please select no more than 4 items. 
      ) 

    ) 

[2] => Array 
    (
     [checkbox_EM9tkQoZ4YMaPncAPenfi6ltB] => Array 
      (
       [required] => This field is required 
       [minlength] => Please select at least 1 items. 
       [maxlength] => Please select no more than 3 items. 
      ) 

    ) 

) 

mais je veux le tableau comme celui-ci

Array 
    (
     [comment_tN9l43iUjZLNap4Dbkf7w8Whb3] => Array 
      (
       [required] => This field is required 
      ) 
     [checkbox_cNVyw1lV0eVrYdeymth2c90AW] => Array 
      (
       [required] => Select Gender 
       [minlength] => Please select at least 2 items. 
       [maxlength] => Please select no more than 4 items. 
      ) 
     [checkbox_EM9tkQoZ4YMaPncAPenfi6ltB] => Array 
      (
       [required] => This field is required 
       [minlength] => Please select at least 1 items. 
       [maxlength] => Please select no more than 3 items. 
      ) 

    ) 
+0

C'est impossible de le faire. Il n'y a pas de tableau sans clé. Le deuxième tableau est exactement le même que le premier. Vous n'avez pas écrit les clés explicitement. – user4035

+0

Oui, je suis d'accord avec @ user4035. – aldrin27

+0

L'op veut supprimer les touches numérotées [0], [1], [2] et a plutôt [comment_tN9l43iUjZLNap4Dbkf7w8Whb3] ... comme clés. Il veut changer le tableau indexé en un tableau associatif. –

Répondre

3

Il est facile tout ce que vous avez à faire est d'appeler array_merge via call_user_func_array pour obtenir les résultats que vous voulez.

$newArray = call_user_func_array("array_merge", $oldArray); 

Vous pouvez voir un exemple simplifié here

0

Vous pouvez essayer ceci:

$newArray = []; 
foreach ($oldArray AS $data) { 
    $newArray = array_merge($newArray, $data); 
} 

Voir la documentation pour array_merge() pour plus d'informations.