Le “Array helper” (Outil Array) vous aide a transformer les arrays.
Attention, pour pouvoir l'utiliser correctement, n'oubliez pas que le nom de class est 'arr' au lieu de 'array'.
'rotate' entraîne une rotation sur un array (en 2D) de forme matrix dans le sens des aiguilles d'une montre. Par exemple, cela transforme un 2×3 array en un 3×2 array.
les deux arguments sont:
Exemple:
// Veuillez notez que les déclarations print() ne sont que pour l'affichage $optical_discs = array ( 'CD' => array('700', '780'), 'DVD' => array('4700','650'), 'BD' => array('25000','405') ); print Kohana::debug($optical_discs); $optical_discs = arr::rotate($optical_discs, FALSE); print ('<br /><br />'); print Kohana::debug($optical_discs);
En HTML cela ressemblera a :
Array
(
[CD] => Array
(
[0] => 700
[1] => 780
)
[DVD] => Array
(
[0] => 4700
[1] => 650
)
[BD] => Array
(
[0] => 25000
[1] => 405
)
)
Array
(
[0] => Array
(
[CD] => 700
[DVD] => 4700
[BD] => 25000
)
[1] => Array
(
[CD] => 780
[DVD] => 650
[BD] => 405
)
)
'remove' enlève une “key” (clé) d'un array et la retourne.
The two arguments are:
Exemple:
// Veillez noter que les declarations print() ne sont que pour l'affichage. $optical_discs = array ( 'CD' => array('700', '780'), 'DVD' => array('4700','650'), 'BD' => array('25000','405') ); print Kohana::debug($optical_discs); $cd = arr::remove('CD', $optical_discs); print ('<br />'); print Kohana::debug($cd); print ('<br />'); print Kohana::debug($optical_discs);
En HTML cela ressemblera a:
Array
(
[CD] => Array
(
[0] => 700
[1] => 780
)
[DVD] => Array
(
[0] => 4700
[1] => 650
)
[BD] => Array
(
[0] => 25000
[1] => 405
)
)
Array
(
[0] => 700
[1] => 780
)
Array
(
[DVD] => Array
(
[0] => 4700
[1] => 650
)
[BD] => Array
(
[0] => 25000
[1] => 405
)
)
'extract' extrait une ou plusieurs keys d'un array. Les Keys qui n'existeront pas dans l'array dans laquelle la recherche s'effectuera seront retournés comme NULL dans les données extraites.
Les deux arguments sont:
Exemple:
$optical_discs = array ( 'CD' => array('700', '780'), 'DVD' => array('4700','650'), 'BD' => array('25000','405') ); $optical_discs = arr::extract($optical_discs, 'DVD', 'Bluray'); echo Kohana::debug($optical_discs);
Output:
(array) Array ( [DVD] => Array ( [0] => 4700 [1] => 650 ) [Bluray] => //NULL )
'binary_search' performe une recherche basique binaire sur un array. Par defaut, cela returne le “key” (clé) de la valeur de l'array il trouve. Les quatres arguments are:
Exemple:
$my_array = array('10', '20', '30', '50', '80'); echo arr::binary_search('50', $my_array); // 3 echo arr::binary_search('45', $my_array); // FALSE (N'a pas trouvé) echo arr::binary_search('45', $my_array, TRUE); // 3 echo arr::binary_search('35', $my_array, TRUE); // 2
'range' remplie un array d'une rangée de nombre.
The two arguments are:
Example: (Rendu)
echo Kohana::debug(arr::range(17, 150));
Output:
(array) Array ( [17] => 17 [34] => 34 [51] => 51 [68] => 68 [85] => 85 [102] => 102 [119] => 119 [136] => 136 )
Emule la fonction array_merge_recursive, mais ajoute des keys(clés) numériques et remplace les keys(clés) associatives au lieu d'ajouter toutes les keys(clés). Cette fonction a besoin de:
Exemple:
echo Kohana::debug(arr::merge(array('a', 'b'), array('c', 'd'), array('e' => array('f', 'g'))));
Cela ressemblera à:
(array) Array ( [0] => a [1] => b [2] => c [3] => d [e] => Array ( [0] => f [1] => g ) )
'overwrite' écrase et réécrit un array avec de nouvelles valeurs. Notez que les keys qui n'existe pas déjà ne seront pas ajoutés. Cette fonction a besoin de:
Exemple:
$array1 = array('fruit1' => 'apple', 'fruit2' => 'mango', 'fruit3' => 'pineapple'); $array2 = array('fruit1' => 'strawberry', 'fruit4' => 'coconut'); print Kohana::debug(arr::overwrite($array1, $array2));
Output: (Rendu)
(array) Array ( [fruit1] => strawberry [fruit2] => mango [fruit3] => pineapple )
map_recursive($callback, array $array) est une fonction (méthode) qui a été crée parce que PHP ne l'a possède pas, et array_walk_recursive ne crèe que des références dans les arrays et n'est donc pas répétitif. Cette fonction a besoin de:
$callback un callback valide à appliquer a chaque membre de l'array$array L'array ou effectuer l'opperationExample :
public function add($value){ return $value + 1; } echo Kohana::debug(arr::map_recursive(array($this, 'add'), array('a' => 1, 'b' => 2, 'c' => array(3, 4), 'd' => array('e' => 5))));
Cela ressemblera à:
(array) Array ( [a] => 2 [b] => 3 [c] => Array ( [0] => 4 [1] => 5 ) [d] => Array ( [e] => 6 ) )
unshift_assoc est une fonction/méthode qui a été crée parce que PHP ne l'a possède pas. Cela ne fait que dissocier et remplacer la valeur d'un key dans un array associatif. Cette fonction a besoin de:
Exemple
$fruits = array('fruit1' => 'apple', 'fruit2' => 'mango', 'fruit3' => 'pineapple'); arr::unshift_assoc($fruits, 'fruit1', 'strawberry'); print Kohana::debug($fruits);
Output (Rendu)
(array) Array ( [fruit1] => strawberry [fruit2] => mango [fruit3] => pineapple )
to_object(array $array, $class = 'stdClass') convertit un array en un object (objet). Cette méthode(fonction) supporte les arrays a niveaux multiples. Elle a besoin de:
Note: Pour les arrays a un niveau, utilisez Typecasting $object = (object) $array;
Exemple
$array = arr::to_object(array('test' => 13)); print $array ->test; print Kohana::debug($array);
Output (Rendu)
13 (object) stdClass Object ( [test] => 13 )