После авторизации Вы получите доступ к файлам, скрытым материалам сайта, исходным кодам
возможность комментировать и т.д.

Вы можете авторизоваться на сайте всего одним кликом:

2016-06-30
Основы PHP → Многомерные массивы
PHP, Многомерные массивы, Предопределенные массивы, Системные массивы, Глобальные массивы

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

Многомерные массивы

Для инициализации многомерных массивов используются те же средства, включая вложенные конструкции аrray():

$aLanguages = аrrау("Slavic" => array("Russian", "Polish", "Slovenian"), "Germanic" => array("Swedish", "Dutch", "English"), "Romance" => array("Italian", "Spanish", "Romanian"));

Для доступа к элементам многомерных массивов, вложенным глубоко внутрь, применяются дополнительные скобки. Таким образом, $aLanguages["Germanic"] указывает на массив, содержащий германские языки, а $aLanguages["Germanic"][2] указывает на третий элемент ("English") вложенного массива.

Обход многомерных массивов может осуществляться с помощью вложенных циклов:

<?php
foreach ($aLanguages as $sKey => $aFamily)
{
   // Вывести название семейства языков:
   echo(
      "<h2>$sKey</h2>" .
      "<ul>"
   );

   // Теперь перечислить языки в каждом семействе:
      foreach ($aFamily as $sLanguage)
      {
         echo("<li>$sLanguage</li>");
      }

// Завершить список:
echo("</ul>");
}
?>

При каждом проходе внешнего цикла переменной $sKey присваивается в качестве значения название семейства языков, а переменной $aFamily — соответствующий внутренний массив. Внутренний цикл обходит массив $aFamily, помещая значение каждого элемента в переменную $sLanguage .

Предопределенные массивы

  1. $GLOBALS - Содержит ссылку на каждую переменную, доступную в данный момент в глобальной области видимости сценария. Ключами этого массива являются имена глобальных переменных.
  2. $_SERVER - Переменные, установленные веб-сервером либо напрямую связанные с окружением выполнения текущего сценария.
  3. $_GET - Переменные, передаваемые сценарию через HTTP GET.
  4. $_POST - Переменные, передаваемые сценарию через HTTP POST.
  5. $_COOKIE - Переменные, передаваемые сценарию через HTTP cookies.
  6. $_FILES - Переменные, передаваемые сценарию через HTTP POST-загрузку файлов.
  7. $_ENV - Переменные, передаваемые сценарию через окружение.
  8. $_SESSION - Переменные, зарегистрированные на данный момент в сессии сценария.
  9. $_REQUEST - Переменные, передаваемые сценарию через механизмы ввода GET, POST и cookie. Не рекомендуется для использования. Следует обращаться к конкретному массиву.

В заключение

Массивы PHP — мощный инструмент, который можно использовать и как обычные списки, и как хэш-таблицы (словари). При их обходе удобно использовать конструкцию foreach.

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

573
0
Пожалуйста, авторизируйтесь, чтобы скачать архив с файлами урока