Массив - это обычная переменная PHP. Массивы предназначены для сохранения группы элементов в переменной. Каждый элемент массива имеет ключ и значение. Значение может представлять собой другую переменную или массив. Массивы бывают обыкновенные и ассоциативные(иногда говорят "хеш"- массив). Отличаются они только тем, что в обыкновенных массивах ключами служат целые числа (индекс начинается с 0), а в ассоциативных - сочетания различных знаков (т.е. строка).
В PHP можно создавать массивы используя функцию array() или специальный оператор [].
<?php $myarray[ ] = "aaa"; $myarray[ ] = "bbb"; $myarray["xkey" ] = "xxx"; $myarray[ ] = "zzz"; $size = count($myarray); echo $size; echo "\nvar_dump:\n"; var_dump($myarray); echo "\n"; ?>
<?php
$myarray = array("aaa", "bbb","zzz");
$size = count($myarray);
echo "\nprint_r:\n";
//print_r($myarray);
$output = print_r($myarray, true);
echo $output;
echo "\nvar_dump:\n";
var_dump($myarray);
echo "\nvar_export:\n";
var_export($myarray);
echo "\n";
?>
Вывод скрипта с использованием функций print_r, var_dump, var_export:
print_r:
Array
(
[0] => aaa
[1] => bbb
[2] => zzz
)
var_dump:
array(3) {
[0]=>
string(3) "aaa"
[1]=>
string(3) "bbb"
[2]=>
string(3) "zzz"
}
var_export:
array (
0 => 'aaa',
1 => 'bbb',
2 => 'zzz',
)
$fruits = array('red' => 'Apples', 'yellow' => 'Bananas', 'beige' => 'Cantaloupes', 'brown' => 'Dates');
Многомерные массивы. Двумерный массив - это массив, каждый элемент которого представляет собой переменную - массив, а каждый элемент дочерних массивов представляет собой стандартную переменную. Такая конструкция позволяет хранить массивы внутри других массивов, а также массивы в массивах массивов и т.д.
$fruits = array('red' => array('strawberry','apple'), 'yellow' => array('banana'));
<?php
$a = array("A"=>1, "B"=>2, "C"=>"a");
foreach($a as $key=>&$value){
if(is_string($value)){
unset($a[$key]);
}
}
print_r($a);
?>
unset($arr[5]); // Это удаляет элемент из массива unset($arr); // Это удаляет массив полностью
<?php
$scores = array(1, 18,17, 10, 2, 20);
sort($scores, SORT_NUMERIC);
print_r($scores);
$scores = array(1,18,17, 10, 2, 20);
sort($scores, SORT_STRING);
print_r($scores);
?>
Array
(
[0] => 1
[1] => 2
[2] => 10
[3] => 17
[4] => 18
[5] => 20
)
Array
(
[0] => 1
[1] => 10
[2] => 17
[3] => 18
[4] => 2
[5] => 20
)
<?PHP $mass=array(array('0','0','bad'),array('0','0','foo')); for($n=0;$n!=sizeof($mass);$n++){ if($mass[$n][2]=='foo'){ echo '$mass['.$n.'][2]=foo<br>'; } } ?>
или
$mass=array(array('0','0','bad'),array('0','0','foo'),array('0','0','foo')); foreach($mass as $d){ if(in_array('foo',$d)){ echo 's'; } }
Проверить, присутствует ли в массиве значение.
bool in_array ( mixed needle, array haystack [, bool strict] )
Ищет в haystack значение needle и возвращает TRUE в случае удачи, FALSE в противном случае.
Если третий параметр strict установлен в TRUE тогда функция in_array() также проверит соответствие types параметра needle и соответствующего значения массива haystack.
$utmkey_get=array("sport", "bola","esporte"); $api_reqest->link='https://wiki.dieg.info/robots'; $utmkey=$_GET['utm_term']; if (in_array($utmkey, $utmkey_get)) { echo $api_reqest->link; } else{ require_once('p2.php'); }?>