SaLanguages = аггау(
"Slavic" => arrayC "Russian", "Polish", "Slovenian"), "Germanic" => array("Swedish", "Dutch", "English"), "Romance" => array("Italian", "Spanish", "Romanian")
):
Для доступа к элементам многомерных массивов, вложенным глубоко внутрь, применяются дополнительные скобки. Таким образом, дей[ "Germanic" ] указывает на массив, содержащий германские языки, а $aLanguages["Germanic"][2] указывает на третий элемент ("English") вложенного массива.
Обход многомерных массивов может осуществляться с помощью вложенных циклов:
foreach ($aLanguages as $sKey => $aFamily) {
// Вывести название семейства языков: echo(
"<h2>$sKey</h2>\n" . "<ul>\n" // Start the list
);
// Теперь перечислить языки в каждом семействе: foreaeh (SaFamily as $sLanguage) Щ echo("\t<li>$sLanguage</li>\n");
// Завершить список: echo("</ul>\n");
}
При каждом проходе внешнего цикла переменной $sKey присваивается в качестве значения название семейства языков, а переменной SaFamily - соответствующий внутренний массив. Внутренний цикл обходит массив SaFamily, помещая значение каждого элемента в переменную SsLanguage.
Результат будет следующим (рис.
Резюме
В данной главе наше внимание было обращено к структурам, являющимся
конструктивными элементами любого полезного РНР-приложения:
♦ Условные операторы if и switch применяются для проверки условий и выполнения различных блоков кода в зависимости от результата.
♦ Циклы while, do ... while и for позволяют выполнять повторяющиеся действия. Цикл foreach специально предназначен для обхода элементов массива.
♦ Функции представляют собой многократно используемые блоки кода, которые можно при необходимости вызывать для выполнения специальных задач. Они способствуют модульности кода и облегчают его сопровождение.
♦ Массивы представляют собой списки значений, хранящиеся в одной переменной.
5
Объектно-ориентированное программирование в РНР
Объектно-ориентированное программирование (ООП) популярно уже длительное время. Началось все со Smalltalk и C++, а позднее распространилось и на другие языки, такие как Java и Python. Когда создается программное приложение, будь то текстовый процессор или компьютерная игра, ООП уже не играет роли необязательной функции языка. Это стандартная технология, с помощью которой разработчики создают сложные и масштабируемые решения с хорошими возможностями сопровождения для коммерческих программных пакетов и для пакетов с открытым кодом.