Массив в PHP – одна большая переменная с множеством ячеек, в каждой из которых может храниться какое-то значение.
Зачем нужны массивы?
Пользователь прислал о себе данные через форму… Создаем массив, кладем туда данные, чтобы не создавать кучу переменных. В CMS почти все взаимодействие с БД реализуют с помощью массивов.
Массив задается с помощью функции array();
$arr = array(); // создаем пустой массив; false при приведении к булеву типу
$user = array (“Kot”, “admin”, “12345”, true); // в массиве могут лежать данные разных типов
echo $user[0]; // Kot
$user[] = ‘kot@mail.ru’; // когда пустые скобки, PHP дает индекс (ключ) следующий за наибольним; в нашем случае 4
Функции для работы с массивами
1) count – считает кол-во элементов массива
2) print_r – вывести содержимое массива // перед тег, чтобы вывод был не в строчку. Минус в том, что не пишется тип данных; для этого…
3) var_dump – более подробная информация о содержимом массива
4) unset ($arr[5]) – удалить элемент массива с ключом 5
Ассоциативные массивы – могут одновременно хранить как поименованные ключи, так и числовые.
Начиная с 5.4 – короткий синтаксис массивов, не вызывая функцию:
$arr = [“name”, “Vasia”];
Функции перемещения по массиву:
current($array); // вернёт значение текущего элемента (по умолчанию внутренний указатель массива стоит вначале, в 0)
next($array); // передвигает указатель массива на одну позицию вперёд
end($array); // на последний элемент
prev($array); // на одну позицию назад
reset($array); // на первый элемент
key($array); // получить ключ текущего элемента
Подводные камни при работе с массивами:
1) при выводе массива:
а) не указывать кавычки echo “Hello, $user[login]”;
б) экранировать элемент echo “Hello, {$user[‘login’]}”;
2) при создания массива обязательно указывать кавычки, иначе PHP может принять элемент массива за константу
$user = array (
‘name’=>”Vasia” // !не писать! name без кавычек
);
Кстати, для работы с массивами особенно удобно использовать циклы. Цикл for можно использовать только если у нас:
а) массив с цифровыми индексами
б) индексы идут подряд
В остальных случаях используется foreach
3) Обращение к символу в строке работает и через круглые и через квадратные скобки:
$str = ‘Hello’;
echo $str{0};
echo $str[0];
Лучше всего _всегда_ использовать для обращения к символу круглые скобки; а квадратные для массива.
foreach (array as $value){} // цикл бегает по всему массиву array туда-сюда и закидывает значения в нашу новую переменную $value
Если нам нужны не только значения, но и ключи:
foreach (array as $key => $value) {} // в первую переменную цикл бросает ключи, а во вторую – значения
$nums = [1,2,3,4,5]; // начиная с 5.4 можно так создавать массив
print_r($nums);
foreach($nums as $v) // мы создаем копии значений массива в переменной $v, поэтому нижеуказанная операция выполняться не будет. Чтобы она выполнилась, нужно обратиться к значению, как к ссылке, поставив перед переменной амперсанд:
foreach($nums as &$v)
$v = $v *10;
print_r($nums);
Шпаргалка будет дополняться 🙂 Пишите свои дополнения в комментариях!
Похоже на копипасту видео курса от специалиста.
это не копипаста, а мой собственноручно написанный подробный конспект с моими примечаниями и дополнениями
А почему ты не установишь плагин для тега code ты же код пишешь не в ворде, так почему же мы пользователи должны страдать и читать ваш монохромный ужос?