Примените функцию к каждому значению в массиве, умножьте каждое значение само на себя и верните массив с новым значением:
<?phpfunction myfunction($v){ return($v*$v);}$a=array(1,2,3,4,5);print_r(array_map("myfunction",$a));?>Функция array_map() применяет пользовательскую функцию к каждому значению в массиве и возвращает массив с новыми значениями после применения пользовательской функции.
Совет: Вы можете ввести в функцию один или несколько массивов.
array_map( моя функция, массив1, массив2, массив3 ...)
параметр | описывать |
---|---|
моя функция | Необходимый. Имя определяемой пользователем функции или значение NULL. |
массив1 | Необходимый. Указывает массив. |
массив2 | Необязательный. Указывает массив. |
массив3 | Необязательный. Указывает массив. |
Возвращаемое значение: | Возвращает массив, содержащий значение array1 , после применения пользовательской функции. |
---|---|
PHP-версия: | 4.0.6+ |
Используйте пользовательскую функцию для изменения значения массива:
<?phpfunction myfunction($v){if ($v==="Dog") { return "Fido" }return $v;}$a=array("Horse","Dog","Cat"); print_r(array_map("myfunction",$a));?>Используйте два массива:
<?phpfunction myfunction($v1,$v2){if ($v1===$v2) { return "тот же" } return "другой";}$a1=array("Лошадь","Собака","Кошка ");$a2=array("Корова","Собака","Крыса");print_r(array_map("myfunction",$a1,$a2));?>Измените все буквы значений в массиве на прописные:
<?phpfunction myfunction($v) {$v=strtoupper($v); return $v;}$a=array("Животное" => "лошадь", "Тип" => "млекопитающее");print_r(array_map ("myfunction",$a));?>При присвоении имени функции значения null:
<?php$a1=array("Собака","Кошка");$a2=array("Щенок","Котенок");print_r(array_map(null,$a1,$a2));?>