Простой пример массива:
$cars = ['Opel', 'Audi', 'VW', 'Toyota', 'Subaru']
// или
$cars = array ('Opel', 'Audi', 'VW', 'Toyota', 'Subaru')
Получить Opel (первый элемент массива) можно по индексу:
echo $cars[0]
2-й способ создания массива:
$cars[0] = 'Opel';
$cars[1] = 'Audi';
$cars[2] = 'VW';
$cars[3] = 'Toyota';
$cars[4] = 'Subaru';
Посчитать количество элементов массива:
echo count($cars)
Вывод всех элементов массива:
1-й способ осуществляется циклом foreach:
foreach ( $cars as $brand ) {
echo $brand . '<br />';
}
2-й способ. Циклом for с счетчиком i, где i - индекс элемента массива:
$n = count($cars);
for ($i=0; $i<$n; $i++) echo "$cars[$i]". '<br>'
3-й способ:
print_r ($cars)
Ассоциативный массив (ключ - значение):
$car1 = array ('brand' => 'VW',
'model' => 'Passat',
'engine' => '2.0',
'year' => '1998');
Вывод ассоциативного массива:
foreach ( $car1 as $key => $value ) {
echo "$key". ': '. "$value". '<br>';
}
Или по индексу (ключу):
echo $car1["model"];
list и each как альтернатива foreach
$cars = array("Opel"=>"Vectra",
"Audi"=>"A6",
"VW" => "Passat",
"Toyota" => "Camry");
while (list($key, $value) = each($cars))
echo "$key : $value <br />"
Многомерный массив (двухмерный)
$cars = array(
"Opel"=> array("Vectra", "Astra", "Insignia"),
"Audi"=> array("A6", "A3"),
"VW" => array("Passat", "Golf", "Tiguan"),
"Toyota" => array("Camry", "Corolla", "Rav 4"),
"Subaru" => array("forester", "Outback", "Impreza"));
foreach ($cars as $brand => $items)
{
echo "<h3>$brand</h3>";
echo "<ul>";
foreach ($items as $key => $value)
{
echo "<li>$value</li>";
}
echo "</ul>";
}
Многомерный массив (вложенный)
$cars = array(
"car1" => array("brand" => "Opel",
"model" => "Vectra",
"year" => "1995"),
"car2" => array("brand" => "VW",
"model" => "Passat",
"year" => "2008"));
// Вывод всех элементов
foreach ($cars as $car => $items)
{
echo "<h3>$car</h3>";
echo "<ul>";
foreach ($items as $key => $value)
{
echo "<li>$key : $value</li>";
}
echo "</ul>";
}
//Вывод одного элемента
echo $cars["car1"]["model"]
Функции для работы с массивами:
sort() - сортировка
arsort() - сортировка в обратном порядке
unset ($car[3]) - удаление элемента по индексу
array_search ('Opel',$cars) - поиск в массиве и вывод индекса
shuffle - перемешать массив в случайном порядке
Преобразовать строку в массив - функция explode()
Пример:
$str = "У самовара я и моя Маша";
$arr = explode(" ", $str);
echo print_r($arr)
Преобразовать массив в строку - функция implode()
Пример:
$arr[0] = "PHP";
$arr[1] = "HTML";
$arr[2] = "CSS";
$string = implode(", ", $arr);
echo $string;
", " - Указывается разделитель