Одномерные ассоциативные массивы.
Основные сведения о массивах. Массив (array) - это переменная специального типа, хранящая много элементов данных. Маcсив позволяет обратиться отдельно к любому из составляющих его элементов (поскольку внутри массива они хранятся отдельно), а также есть возможность копировать или обрабатывать массив целиком. Массивы в PHP играют очень важную роль и повсеместно используются при построении сайтов. Для доступа к информации массива достаточно просто указать имя массива и индекс ячейки с данными. Для наглядности приведу пример структуры простого индексного массива и переменной. Массивы PHP нетипизированы, это означает, что элементы массива могут иметь любой тип, причем разные элементы в массиве могут иметь различные типы. Помимо этого массивы PHP являются динамическими, это означает, что фиксированный размер объявлять не нужно и новые элементы можно дабавлять в любое время. Чтобы работать с массивами, вам нужно освоить два новых понятия: элементы и индексы. Элементы - это значения хранящиеся в массиве, значения могут быть абсолютно любого типа. К каждому элементу можно обратиться по его уникальному индексу. В качестве индекса может использоваться целое число или строка.Массивы можно разделить на два типа: индексные, у которых в качестве значения индекса используется только целое число и ассоциативные, где значением индекса может быть как строка так и число. Часто в ассоциативных массивах индекс называется: «ключ». Индексные массивы обычно называют просто «массивами», а ассоциативные массивы - «хешами», «ассоциативными» или «словарями». Создание массива.
В PHP есть три способа создания массивов. Первый способ - это создание с помощью специальной функции array(). В качестве аргументов функция принимает любое количество пар ключ => значение (key => value) разделенных запятыми или просто значения, также разделяемые запятыми. Она возвращает массив, который можно присвоить переменной. Пример создания массива ниже.
<?php // Создание массива $avto= array('Opel','BMW','Mercedes','Reno','Volvo','Seat','Ford'); ?> Так как указывать ключ не обязательно, значения можно добавлять в массив без его указания. Если ключ не указывается, PHP будет использовать числовые индексы. По умолчанию элементы будут нумероваться, начиная с нуля. Массивы с числовыми индексами позволяют просто добавить элемент, а PHP автоматически будет использовать предыдущее наибольшее значение ключа типа integer, увеличенное на 1.Пример представлен ниже.
ГЛАВА 2 Ассоциативные и индексные массивы Ассоциативные массивы.
Ассоциативные массивы есть еще одной разновидностью массивов PHP. Отличием ассоциативных массивов от простых являются индексы. Если в простых массивах это были числовые индексы, то ассоциативных эти индексы текстовые. Это делает ассоциативные массивы более упорядоченными и осмысленными. Благодаря этому они более широко применяются,нежели простые индексные. Рис.1- Ассоциативный массив. Итак,массивы, индексами которых являются строки,называются ассоциативными массивами. При использовании ассоциативных массивов вместо численных индексов 0, 1, 2, 3... для доступа к элементам массива используются более понятные текстовые обозначения - в принципе, можно использовать любой набор символов, который носит название ключа (key). Например, в нашем примере в качестве ключа можно использовать сами варианты, которые используются при проведении опроса, а число полученных голосов будет представлено как значение данного ключа.
При использовании численных индексов для доступа к элементам массива мы не должны заботиться, например, об увеличении индекса - все это берет на себя PHP. При работе с ассоциативными массивами необходимо сохранять значение ключа для доступа к элементу массива. Если мы хотим присвоить элементу с данным названием ключа численное значение, то для этого используется символическая стрелка, которая состоит из знака равенства и символа «больше». Например, при использовании ассоциативного массива для представления результатов опроса перед самим проведением опроса значения можно инициализировать следующим способом:
<? $poll = array( "Animated Adventures" => 0, "Deep Space Nine" => 0, "Enterprise" => 0, "Next Generation" => 0, "Original Series" => 0, "Voyager" =>0 ); ?> Одномерные ассоциативные массивы. Ассоциативные массивы особенно удобны в ситуациях, когда элементы массива удобнее связывать со словами, а не с числами. Предположим, вы хотите сохранить в массиве лучшие сочетания вин и блюд. Проще всего было бы хранить в массиве пары «ключ/значение» -- например, присвоить сорт вина названию блюда. Самым разумным решением будет использование ассоциативного массива: Spairings["zinfandel"] = "Broiled Veal Chops"; $pairings["merlot"] = "Baked Ham"; $pairings["sauvignon"] = "Prime Rib"; $pairings["sauternes"] = "Roasted Salmon"; Ассоциативный массив заметно экономит время и объем программного кода, необходимого для вывода определенных элементов массива.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|