В этой статье описывается пример функции обратного вызова PHP, обрабатывающей операции с массивом. Подробности заключаются в следующем:
array_ Уменьшить – итеративно уменьшает массив до одного значения с помощью функции обратного вызова
смешанный array_reduce ( массив $массив , вызываемый $обратный вызов [, смешанный ] )
- Обратный вызов [смешанный обратный вызов (смешанный $перенос, смешанный $элемент) перенос — перенос значения в последней итерации; если эта итерация является первой, то это значение является начальным. Элемент — содержит значение этой итерации. 】
- Initial [если указан необязательный параметр initial, он будет использоваться до начала обработки или последний результат, когда обработка закончится и массив будет пуст. 】
Пример:
$res = [
'0' => [
'a' => 'you',
'b' => 'me'
],
'1' => [
'c' => 'li',
'd' => 'op'
]
];
$res = array_reduce($res,function($result,$value) {
return array_merge($result,array_values($value));
},array());
var_dump($res);
Выход:
массив(4) { [0]=> строка(3) “ты” [1]=> строка(2) “я” [2]=> строка(2) “li” [3]=> строка(2) “op” }
array_фильтр – отфильтруйте ячейки в массиве с помощью функции обратного вызова
массив array_фильтр (массив $массив [, вызов $обратный вызов [, int]]) возвращает отфильтрованный массив.
- Массив — массив для цикла
- Обратный вызов — используемая функция обратного вызова. Если функция обратного вызова не предусмотрена, все записи в массиве с эквивалентным значением false будут удалены.
- Флаг — определяет форму параметра приема обратного вызова:
- ARRAY_ФИЛЬТР_ USE_ Ключ – обратный вызов принимает имя ключа в качестве единственного параметра
- ARRAY_ФИЛЬТР_ ИСПОЛЬЗОВАНИЕ обоих – обратный вызов принимает как имя ключа, так и значение ключа
Пример:
function odd($var)
{
// returns whether the input integer is odd
return($var & 1);
}
function even($var)
{
// returns whether the input integer is even
return(!($var & 1));
}
$array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$array2 = array(6, 7, 8, 9, 10, 11, 12);
echo "Odd :\n";
print_r(array_filter($array1, "odd"));//1,3,5
echo "Even:\n";
print_r(array_filter($array2, "even"));//2,4,6
array_map – применяет функцию обратного вызова к каждому элементу массива
array_map ( вызываемый $обратный вызов , массив $array1 [, массив $… ] )
параметр
- Обратный вызов — функция обратного вызова, применяемая к каждому элементу в каждом массиве.
- Array1 — массив, пройдите и запустите функцию обратного вызова.
…
Список массивов, каждый из которых проходит и выполняет функцию обратного вызова.
Возвращаемое значение — возвращает массив, содержащий все элементы array1 после функции обратного вызова.
Пример:
function cube($n)
{
return($n * $n * $n);
}
$a = array(1, 2, 3, 4, 5);
$b = array_map("cube", $a);
print_r($b);
Выход:
Массив ( [0] => 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 )
Подробнее о содержании, связанном с PHP, заинтересованные читатели могут ознакомиться с темой сайта: Энциклопедия навыков работы с массивами PHP, краткое изложение часто используемых алгоритмов обхода PHP и навыков, краткое изложение использования строк PHP, краткое изложение часто используемых функций и навыков PHP, краткое изложение методов обработки ошибок и исключений PHP, вводный курс по базовой грамматике PHP, вводный курс объектно-ориентированного программирования PHP и краткое изложение навыков математической работы PHP
Я надеюсь, что эта статья будет полезна для программирования на PHP.