array_map Застосовує зворотній виклик до всіх елементів зазначених масивів &reftitle.description; arrayarray_map callablecallback arrayarray1 array... array_map повертає масив, що вміщує всі елементи array1 після застосування callback-функції до кожного елемента. Кількість параметрів, які приймає callback-функція повинна відповідати кількості масивів переданих до array_map &reftitle.parameters; callback Callback-функція, що запускається для кожного елемента в кожному з переданих масивів. array1 Масив, до якого застосовується callback-функція. ... Змінний список масива аргументів, до яких застосовується callback-функція. &reftitle.returnvalues; Повертається масив, що містить всі елементи з масива array1 після застосування callback-функції до кожного з них. &reftitle.examples; Використовуючи <function>array_map</function>, піднесення ряду чисел з масива в куб ]]> Це створить $b, що має: 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 ) ]]> Використання <function>array_map</function> разом з lambda-функцією (починаючи з PHP 5.3.0) ]]> 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 ) ]]> Використання <function>array_map</function> - робота з більшою кількістю масивів $m)); } $a = array(1, 2, 3, 4, 5); $b = array("uno", "dos", "tres", "cuatro", "cinco"); $c = array_map("show_Spanish", $a, $b); print_r($c); $d = array_map("map_Spanish", $a , $b); print_r($d); ?> ]]> &example.outputs; The number 1 is called uno in Spanish [1] => The number 2 is called dos in Spanish [2] => The number 3 is called tres in Spanish [3] => The number 4 is called cuatro in Spanish [4] => The number 5 is called cinco in Spanish ) // вивід $d Array ( [0] => Array ( [1] => uno ) [1] => Array ( [2] => dos ) [2] => Array ( [3] => tres ) [3] => Array ( [4] => cuatro ) [4] => Array ( [5] => cinco ) ) ]]> Зазвичай при використанні двох або більше масивів, вони мають однакову довжину, оскільки callback-функція застосовується паралельно до відповідних елементів. Якщо масиви мають не однакову довжину, кожен із коротших масивів буде доповнено пустими елементами, щоб відповідати довжині найдовшого із них. Цікаве використання цієї функції для створення масива масивів, що можна легко зробити за допомогою &null; в якості імені callback-функції Створення масива масивів ]]> &example.outputs; Array ( [0] => 1 [1] => one [2] => uno ) [1] => Array ( [0] => 2 [1] => two [2] => dos ) [2] => Array ( [0] => 3 [1] => three [2] => tres ) [3] => Array ( [0] => 4 [1] => four [2] => cuatro ) [4] => Array ( [0] => 5 [1] => five [2] => cinco ) ) ]]> Якщо масив-аргумент містить рядкові ключі, то результуючий масив буде містити рядкові ключі тоді, і тільки тоді, коли передається рівно один масив. Якщо передано більше одного аргумента, то результуючий масив буде завжди мати цілочисельні (integer) ключі. Використання <function>array_map</function> з рядковими ключами "value"); function cb1($a) { return array ($a); } function cb2($a, $b) { return array ($a, $b); } var_dump(array_map("cb1", $arr)); var_dump(array_map("cb2", $arr, $arr)); var_dump(array_map(null, $arr)); var_dump(array_map(null, $arr, $arr)); ?> ]]> &example.outputs; array(1) { [0]=> string(5) "value" } } array(1) { [0]=> array(2) { [0]=> string(5) "value" [1]=> string(5) "value" } } array(1) { ["stringkey"]=> string(5) "value" } array(1) { [0]=> array(2) { [0]=> string(5) "value" [1]=> string(5) "value" } } ]]> &reftitle.seealso; array_filter array_reduce array_walk