Работа с массивами
// Количестов элементов массива
$a = array(
"fruit" => array( "1"=>"apple", "2"=>"orange", "3"=>"banana"),
"vegetables" => "carrot"
);
echo count($a);
// == 2
echo count($a, COUNT_RECURSIVE);
// == 5
// Вычислить сумму элементов
$a = array(1, 1, 1, 0.5);
echo array_sum($a);
// == 3.5
// Поиск уникальных
$a = array("pineapple", "pear", "apple", "pear", "pineapple", "plum", "pear", "orange");
echo array_unique($test_arr)." <br/>";
// Поиск в массиве
$a = array("orange","apple","PEAR","pineapple");
if (in_array("PEAR",$a, true)) {
echo 1;
} else {
echo 0;
}
// == 1
if (in_array("Pear",$a)) {
echo 1;
} else {
echo 0;
}
// == 0
// применить функцию ко всем элементам массива
$a = array("Ann"=>"pineapple", "Ben"=>"pear","Peter"=>"apple", "Fill"=>"plum", "Jill"=>"orange");
function my_func($v,$k) {
echo '<p>'.$k.' likes '.$v.'</p>';
}
array_walk($a,"my_func");
// применить функцию ко всем элементам массива и передать параметр
$a = array("Ann"=>"pineapple", "Ben"=>"pear","Peter"=>"apple", "Fill"=>"plum", "Jill"=>"orange");
function my_func_2($v,$k,$t) {
echo '<p>'.$t.' - '.$k.' likes '.$v.'</p>';
}
$date = date("d.m.Y",time());
array_walk($a,"my_func_2",$date);
// Вернуть последовательность элементов по номерам позиций
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 2); // возвращает "c", "d", и "e"
$output = array_slice($input, -2, 1); // возвращает "d"
$output = array_slice($input, 0, 3); // возвращает "a", "b", и "c"
// Разбить массив на части
$a = array("Ann"=>"pineapple","Ben"=>"pear","Peter"=>"apple","Fill"=>"plum","Jill"=>"orange");
$arr = array_chunk($a, 2, true);
// Извлечь последний элемент массива
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_pop($stack);
// Добавить в массив
$stack = array("orange", "banana");
array_push($stack, "apple", "raspberry");
// Выбрать различные элемнты двух массивов
$array1 = array ("a" => "apple", "cherry", "mango", "cherry");
$array2 = array ("b" => "apple", "orange", "cherry");
$result = array_diff ($array1, $array2);
Комментарии
0Нашли ошибку или хотите дополнить материал?