Язык PHP: Массивы и списки
Основы / Математика / Строки и текст / Массивы и списки / Разные ошибки / О сложном
Работа с массивами и списками в PHP
- Как создать массив?
- Как сделать цикл по массиву?
- Как узнать количество элементов списка или массива?
- Как проверить, что массив пустой?
- Как сконвертировать массив в строку?
Как создать массив?
Для создания массива в php предусмотрена следующая конструкция:
$array = [1, 2, 3, 4, 5, 6];
Для объявления массивов используются квадратные скобки
[
и]
.
Однако существует и старая конструкция для объявления массивов, более громоздкая и неудобная:
$array = array(1, 2, 3, 4, 5, 6);
Вы также можете объявить именованный массив с ключами, через символ =>
:
$array = ['x' => 10, 'y' => 20, 'score' => 90];
Обращаться к элементам массива можно через квадратные скобки:
$array = ['x' => 10, 'y' => 20];
alert($array['x']); // выведет в сообщении 10.
Как сделать цикл по массиву?
Простой способ перебора всех элементов массива.
Для этого в php есть специальный цикл foreach
, который перебирает все элементы массива, например:
$array = [1, 2, 3, 4];
foreach ($array as $value) {
alert($value);
}
Вы также можете перебирать массив вместе с его ключами:
$array = ['x' => 10, 'y' => 20, 'z' => 30];
foreach ($array as $key => $value) {
alert("$key = $value");
}
foreach
работает и для списков UI объектов, например для свойства->items
.
Как узнать количество элементов списка или массива?
Для этого используйте функцию count()
, это очень просто:
$array = [1, 2, 3];
$result = count($array);
Или для компонента список:
$result = count($this->listView->items);
Как проверить, что массив пустой?
Для проверки на то что массив пустой, в php есть небольшое упрощение:
$array = [];
if (!$array) {
alert('Массив пустой');
}
PHP умеет сам проверять, пустой массив или нет.
Осторожно, это не работает для списков-объектов, для них используйте
count() == 0
.
Как сконвертировать массив в строку?
Описание функций по склейке массивов - join, implode и т.п.
Для того, чтобы сконвертировать массив в строку, есть класс php\lib\str
и метод join
:
use php\lib\str;
$array = [1, 2, 3];
$message = str::join($array, '-');
alert($message);
В сообщении будет выведено
1-2-3
.