PHP: Преобразование в массив, многомерные массивы

До этого момента в качестве элементов массива мы использовали только числа и строки. На самом деле элементом может быть все что угодно, даже другие массивы. Выглядит это следующим образом:

Это пример инициализации двумерного массива, где в качестве элементов выступают обычные (одномерные) массивы. Он содержит информацию о знании иностранных языков. На самом деле мы можем еще более усложнить структуру, если в качестве элементов внутреннего массива возьмем еще один массив, тогда это уже будет трехмерный массив. При желании так можно продолжать очень долго, но на практике обычно на этом останавливаются.

Обращение к элементам внутреннего массива происходит следующим образом:

$lang = аrrау(
'Петров'=> array ('Английский','Испанский',  'Немецкий&quot')
,'Иванов'=> array ('Французский','Итальянский')
,'Сидоров'=> array('Немецкий'));

$lang["Петров"][0];

В данном случае мы обращаемся к первому элементу массива, который, в свою очередь, является первым элементом массива $lang, то есть к строке Английский.

Обход многомерных массивов можно также производить с помощью конструкции fоreach. При этом мы будем иметь дело с вложенными циклами.

Вывод многомерных массивов

<?php
Slang = аггау('Петров'=>array ('Английский', 'Испанский',  'Немецкий'),
'Иванов'=> array ('Французский',  'Итальянский'),
'Сидоров'=> array ('Немецкий'));
foreach (Slang as key => lvalue);
echo $кеу . '<br>';
foreach (Svalue as $sub_key => $sub_value)
echo $sub_key . &quot; &quot; . $sub_value . '<br>'; // вывод элемента
echo '<br>';
?>

Итак, во внешнем цикле переменная $key будет принимать значения индексов внешнего массива, то есть строки Петров, Иванов, Сидоров, а переменная lvalue – внутренние массивы. Переменные $sub_key и $sub_value работают уже непосредственно с ключами и значениями внутренних массивов.

Здесь приводились примеры различных преобразований типов данных. Естественно, что тип Array не был разобран, так как тогда база знаний еще не позволяла этого сделать. Приведем пример преобразования известных нам типов данных в массив.

<?php
$var_int = 123; 
$var_double = 12.12; 
$var_string = 'World'; 
$var_boolean = TRUE; 
print_r((array)$var_int); 
echo '<br>';
print_r((array)$var_double); 
echo '<br>';
print_r((array)$var_string); 
echo '<br>';
print_r((array)$var_boolean); 
?>

Во всех случаях создается массив с единственным элементом, ключ которого равен нулю, а значение соответствует преобразуемой переменной. Относительно других типов данных можно сказать, что преобразование происходит точно так же.

Это последняя статья где мы разобрали одну из самых важных структур в программировании – массив. Помните, что его основная задача работать с группой данных. Всегда старайтесь использовать цикл foreach для обхода массивов, так как на данный момент он является самой мощной и в то же время простой конструкцией в РНР. Я привел лишь часть функций для работы с массивами, остальные вы сможете найти в справочниках по РНР.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100