Как вывести отдельный элемент массива в PHP
Обращение к элементам массива осуществляется подобно обращениям к символам строки: первый элемент имеет номер 0 , второй — номер 1 и так далее. Эти номера называются элементов массива. Давайте посмотрим на примере:
Создайте массив с элементами ‘a’ , ‘b’ и ‘c’ . Выведите на экран каждый из этих элементов.
Создайте массив с элементами массив с элементами ‘a’ , ‘b’ и ‘c’ , ‘d’ . Выведите с его помощью на экран строку ‘a+b+c+d’ .
Создайте массив с элементами 1 , 2 и 3 . Выведите на экран сумму этих элементов.
Создайте массив с элементами 2 , 5 , 3 , 9 . Умножьте первый элемент массива на второй, а третий элемент на четвертый. Результаты сложите, присвойте переменной $res . Выведите на экран значение этой переменной.
Вывести элементы массива
Вывести элементы массива можно через цикл foreach() .
$arrays = ['PHP', 'MySQL']; $html = ''; foreach ($arrays as $array) < $html .= $array.', '; > echo $html; // PHP, MySQL
Стоит отметить, что вывод элементов массива происходит не внутри цикла, а внешне. Внутри цикла формируется только переменная с результатом. Это сделано для производительности, т.к. добавление элемента массива в переменную работает быстрее, чем сразу её вывод в каждой итерации цикла.
Если надо вывести элементы массива через запятую, как указано на примере выше, то можно сократить код:
$array = ['PHP', 'MySQL']; echo implode(', ', $array); // PHP, MySQL
Функция implode() выводит элементы массива через указанный разделитель, в данном примере через разделитель «, ».
2-ой способ: Отладка
Когда надо временно вывести элементы массива, чтобы просмотреть её значения, то можно использовать функцию print_r() или var_dump() .
Также для этой цели рекомендуется установить расширение Xdebug, который будет подсвечивать var_dump() , что визуально будет удобно для отладки массивов.
Обновлено: 01 ноября 2020
Комментарии
Авторизуйтесь, чтобы добавлять комментарии
Вывести значение из массива php
сильно не пинайте, знания PHP стартовые:) Не получается вывести значение из массива (необходимо вывести дату [formatted] и время [time] и [timeto].
print_r( $jckwds->get_reserved_slot() );
выводит следующее:
Array ( [id] => 20170624_0 [date] => Array ( [formatted] => 24/06/2017 [id] => 20170624 ) [time] => Array ( [timefrom] => Array ( [time] => 02:30 [stripped] => 0230 ) [timeto] => Array ( [time] => 10:45 [stripped] => 1045 ) [cutoff] => [lockout] => 4 [shipping_methods] => Array ( [0] => any ) [fee] => Array ( [value] => [formatted] => €0,00 ) [days] => Array ( [0] => 0 [1] => 1 [2] => 6 ) [id] => 0 [time_id] => 02301045 [formatted] => 02:30 AM - 10:45 AM [formatted_with_fee] => 02:30 AM - 10:45 AM [value] => 0|0.00 ) )
Код, которым пытаюсь вывести хотя бы дату:
global $jckwds; $jckw = $jckwds->get_reserved_slot(); foreach($jckw as $key)
Отслеживать
9,718 9 9 золотых знаков 25 25 серебряных знаков 35 35 бронзовых знаков
задан 17 июн 2017 в 8:32
1 1 1 серебряный знак 1 1 бронзовый знак
19 июн 2017 в 2:16
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Для того чтобы легко понять структуру многомерного массива, в первую очередь посмотрите на строение.
Array ( [id] => 20170624_0 [date] => Array ( [formatted] => 24/06/2017 [id] => 20170624 ) [time] => Array ( [timefrom] => Array ( [time] => 02:30 [stripped] => 0230 ) [timeto] => Array ( [time] => 10:45 [stripped] => 1045 ) [cutoff] => [lockout] => 4 [shipping_methods] => Array ( [0] => any ) [fee] => Array ( [value] => [formatted] => €0,00 ) [days] => Array ( [0] => 0 [1] => 1 [2] => 6 ) [id] => 0 [time_id] => 02301045 [formatted] => 02:30 AM - 10:45 AM [formatted_with_fee] => 02:30 AM - 10:45 AM [value] => 0|0.00 ) )
Дальше через foreach можете получить пару ключ=>значение
foreach($jckw as $key=>$val) < echo $val; /* или */ echo $jckw[$key]; >
В переменной $val уже находятся значения, их можно получать и без ключа, если вам нужно получить одно значение по ключу, например
echo $jckw[‘date’][‘formatted’]; или echo $jckw[‘time’][‘timefrom’][‘time’];
Как вывести массив циклом php
Для того, чтобы вывести элементы массива, можно воспользоваться простым циклом for . Нужно задать счётчик, который будет соответствовать индексам. И не забыть остановить работу цикла, когда элементы закончатся:
$chars = ["a", "b", "c"]; for ($i = 0; $i count($chars); $i += 1) print_r(echo $chars[$i]); > // => "abс"