Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен_ASP_2009-2010.doc
Скачиваний:
8
Добавлен:
01.03.2025
Размер:
111.62 Кб
Скачать

Индексные и ассоциативные массивы

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

<?php

$menu[0]   =   "белый  цветок";

$menu[1]   =   "колосок";

?>

Попробуйте догадаться, что за "блюда" входят в состав массива $menu? Картина прояснится, если массив записать следующим образом.

<?php

$menu["vine"]   =   "белый  цветок";

$menu["beer"]   =   "колосок";

?>

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

<?php

define("KEY","beer");

$menu[KEY]   =   "колосок";

?>

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

<?php

$man  =   array!

"name"   =>   "Иван";

"surname"   =>   "Петров";

) ; ?>

А вот так можно обратиться к любому из элементов ассоциативного массива по имени.

<?php

//Создаем  массив

$man  =   array(

"name"   =>   "Иван";

"surname"   =>   "Петров";

); //Обращаемся  к  элементу  с  именем   "name" echo   $man["name"];

  ?>

  1. Стандартные функции обработки массивов.

  2. Одномерные индексные массивы.

  3. Одномерные ассоциативные массивы.

  4. Операторы перехода. Оператор возврата.

  5. Работа с базами данных MySQL в PHP.

  6. Создание, просмотр, редактирование содержимого таблиц базы данных MySQL

  7. Определение прав доступа к данным в базе данных MySQL.

  8. Манипулирование данными в базе данных MySQL.

Использование запросов в базе данных MySql. Выбор базы данных

Работая с MySQL из командной строки, необходимо указывать используемую базу данных:

use books;

То же самое необходимо и при подключении из Веб. База данных, которая должна использоваться, указывается в параметре конструктора mysqli или функции mysqli_connect(). Если впоследствии понадобится изменить используемую базу данных, для этого служит функция mysqli_select_db(), доступ к которой осуществляется следующим образом:

$db -> select_db (dbname)

или

mysqli_select_db (db_resource, db_name)

И здесь поддерживаются обе версии функции — объектно-ориентированная и процедурная, причем процедурная отличается льшь префиксом mysqli_ в имени и параметром, в котором должен передаваться ресурс подключения.

Выполнение запроса к базе данных

Чтобы осуществить запрос, необходимо воспользоваться функцией mysqli_query(). Однако прежде этот запрос необходимо построить:

$query = "select * from books where ".$searchtype." like '%".$searchterm."%'";

В этом случае будет выполняться поиск значения, введенного пользователем ($searchtype) в указанном им поле ($searchterm). Вы, вероятно, обратили внимание на то, что для установки соответствия мы употребили like, а не eqal —при поиске в базе данных обычно имеет смысл несколько расширить границы поиска.

Теперь можно выполнить запрос:

$result = $db -> query($query);

Либо, если вы предпочитаете процедурный интерфейс, запрос будет выглядеть так:

$result = mysqli_query ($db, $query);

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

Объектно-ориентированная версия возвращает объект результата, а процедурная версия — ресурс результата. В любом случае возвращаемое значение сохраняется в переменной $result для дальнейшего использования. Функция возвращает значение false в случае ошибки.