Массивы с числовыми индексами
Стр 1 из 3Следующая ⇒ PHP PHP - Препроцессор гипертекста. Это серверный язык программирования, созданный специально для динамических страниц Web. Язык был первоначально разработан в 1994 г. Расмусом Лердорфом и был с тех пор расширен, чтобы стать одним из наиболее популярных языков сценариев WWW. Согласно статистике Netcraft в 2005 г. PHP использовался более чем на 23000000 доменах. Подобно другим типам серверных языков, таких, как ASP, ASP.NET и JSP, код PHP обрабатывается на сервере Web и создает код HTML или другой вывод, который можно увидеть в браузере. В отличие от других серверных языков, PHP является продуктом с открытым исходным кодом — это означает, что каждый имеет доступ к исходному коду и может использовать, изменять и распространять его полностью бесплатно. Текущая версия PHP имеет номер 5. Систему PHP5 можно применять практически с любым типом операционной системы и сервера Web. Однако, чтобы сценарии PHP были обработаны, должен быть установлен интерпретатор PHP. Это программное обеспечение доступно в двух формах – полный исходный код и исполняемые двоичные файлы. Большинство систем Linux поставляются с исходным кодом PHP. Соединение HTML и PHP Код PHP обычно объединяется с тегами HTML. PHP является встраиваемым языком — это означает, что можно перемещаться между чистым кодом HTML и PHP, не жертвуя возможностью чтения текста. Чтобы встроить код PHP в HTML, PHP должен задаваться обособленно, с помощью начального и конечного тегов PHP. Теги PHP говорят серверу Web, где начинается и заканчивается код PHP. Анализатор PHP распознает три варианта начального и конечного тегов.
· <?php · Блок кода PHP ?> Первый вариант тегов PHP называется тегами в стиле XML и является предпочтительным стилем. Он работает в документах Расширяемого языка разметки (XML). Этот метод должен использоваться при соединении PHP с документами XML и XHTML.
Сокращенный стиль · <? · Блок кода PHP ?> Сокращенный стиль является самым простым, однако, вступает в противоречие с объявлениями документов XML.
· <script language="php"> · Блок кода PHP </script> Этот стиль использует самую длинную запись и похож на стиль тегов, применяемых с JavaScript. Этот стиль является предпочтительным при использовании редактора HTML, который не распознает другие стили тегов. Блоки сценария могут размещаться в любом месте документа HTML, в том месте, где сценарий создает и показывает свой вывод. Следующий пример страницы HTML иллюстрирует использование трех форматов тегов сценария.
<p> <?php echo "Это базовый документ PHP";?> </p>
<p> <? print "PHP – это здорово!";?> </p>
<p>
<script language="php"> $myvar = "Hello World! "; echo $myvar; </script>
</p>
В предыдущем примере три блока PHP включены в документ HTML. Первый блок использует открывающий и закрывающий теги <?php...?>. Сегмент кода использует оператор PHP echo для вывода строки "Это базовый документ PHP" в окне браузера. Второй блок применяет теги <?...?> для пометки начала и конца кода PHP. Этот раздел применяет оператор PHP print (другое имя оператора echo) для вывода на экране текста "PHP – это здорово!". Наконец, третий блок использует блок сценария <script language="php">... </script> для определения начала и конца кода PHP. В коде строка "Hello World!" присваивается переменной $myvar, а оператор echo выводит значение $myvar в окне браузера. Это базовая страница PHP.
PHP – это здорово!
Hello World! Пример показанного выше кода включает теги HTML, теги PHP, операторы PHP и разделители. Когда пользователь запрашивает страницу PHP, сервер обрабатывает весь код PHP. Когда страница PHP просматривается в окне браузера, выводится только текст между открывающим и закрывающим тегами HTML или PHP. Никакой реальный код PHP не виден при просмотре исходного кода в окне браузера. Причина в том, что интерпретатор PHP выполняет сценарий на сервере и заменяет код результатом вывода работы сценария. Только этот вывод передается браузеру. Это одна из характеристик, которая делает PHP серверным языком сценариев, в отличие от JavaScript, языка сценариев клиента.
Вывод контента PHP содержит два основных оператора для вывода текста в браузере Web: echo и print. Оба оператора, echo и print, кодируются между открывающим и закрывающим тегами блока кода PHP и могут находиться в любом месте в документах HTML. Операторы echo и print используют следующий формат: echo – используется для вывода одной или нескольких строк. echo "Выводимый текст"; print – используется для вывода строки. В некоторых случаях оператор print предлагает большую функциональность, чем оператор echo. Это будет рассмотрено далее в учебнике. Пока print можно считать другим именем оператора echo. print "Выводимый текст"; Следующие примеры демонстрируют использование и размещение команд echo и print в документе XHTML. <!DOCTYPE html PUBLIC "-//W3C//DTD/XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml11-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Страница Web</title> </head> <body>
<p>
<?php echo "Это базовый документ PHP"; ?>
</p>
</body> </html> В большинстве случаев необходимо выводить целые параграфы в окне браузера или создавать переносы строк при выводе контента. По умолчанию операторы echo и print не создают автоматические переносы строк, необходимо использовать тег <p> или <br> для создания параграфов или переносов строк. Разделители, создаваемые в редакторе HTML с помощью возврата каретки, пробелов и табуляции, игнорируются процессором PHP. В следующем примере тег параграфа HTML включается в оператор PHP echo. В PHP теги HTML можно применять в операторах print и echo для форматирования вывода. В этих случаях вывод необходимо заключать в двойные кавычки (""), чтобы гарантировать, что браузер не интерпретирует тег буквально и не выведет его как часть строки вывода.
echo "<p>Параграф 1</p>"; echo "<p>Параграф 2</p>"; Без использования тега параграфа HTML предыдущие операторы echo будут выводить контент в следующем виде: Параграф 1 Параграф 2 При включении тегов параграфов операторы выводятся как два отдельных параграфа. Параграф 1
Параграф 2 Терминатор инструкции Каждая строка кода PHP должна завершаться терминатором инструкции (признаком конца), в качестве которого используется точка с запятой (;). Терминатор инструкции применяется для отделения одного множества инструкций от другого. Отсутствие терминатора инструкции может приводить к ошибкам в работе интерпретатора PHP и выводу ошибок в окне браузера. Следующий фрагмент кода показывает распространенную ошибку отсутствия терминатора инструкции. <!DOCTYPE html PUBLIC "-//W3C//DTD/XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml11-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Страница Web </title> </head> <body>
<p>
<?php
echo "Эта строка порождает ошибку" echo "В предыдущей строке отсутствует терминатор инструкции";
?>
</p> </body> </html> В этом примере в первом операторе echo пропущен терминатор инструкции. Так как интерпретатор PHP не может определить конец первого оператора echo и начало второго, то происходит ошибка. В зависимости от настроек Обработки ошибок (Error Handling) интерпретатора, будет выводиться сообщение об ошибке или браузер выведет просто пустую страницу. Далее показано типичное сообщение об ошибке, которое выводится, когда пропущен терминатор инструкции: Parse error: syntax error, unexpected T_PRINT in C:\ApacheRoot\test.php on line 11 Ошибка при разборе: синтаксическая ошибка, непредвиденный T_PRINT в... в строке 11 Как можно видеть, сообщения об ошибках PHP достаточно загадочны по своей природе. Отсутствие терминатора инструкции является распространенной ошибкой среди новичков PHP. Со временем появится привычка проверять каждую строку на наличие терминатора инструкции. Комментарии в коде
Комментарии применяются в PHP для записи собственных замечаний во время процесса разработки кода. Такие комментарии могут определять назначение сегмента кода или их можно использовать для исключения блоков кода во время тестирования и отладки сценариев. Синтаксический анализатор PHP игнорирует комментарии. Комментарии в PHP можно определить одним из следующих способов: // — простой комментарий PHP; # — альтернативный простой комментарий PHP; /*...*/ — многострочные блоки комментариев. <!DOCTYPE html PUBLIC "-//W3C//DTD/XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml11-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Страница Web </title> </head> <body>
<p>
<?php
// Простой комментарий PHP # Другой тип простого комментария PHP
/* Многострочный блок комментария PHP Он может занимать любое необходимое количество строк */
?>
</p> </body> </html>
Переменные массивы
В то время как скалярная переменная PHP хранит одно значение, переменную массива можно использовать для хранения множества или последовательности значений. Система PHP поддерживает массивы с числовыми индексами и ассоциативные массивы. Массив в PHP является фактически упорядоченным отображением. Отображение является типом, который отображает значения в ключи. Переменные массивов состоят из двух частей – индекса и элемента. Индекс массива, иногда называемый ключом массива, является значением, применяемым для идентификации или доступа к элементам массива. Индекс массива помещается в квадратные скобки. Большинство массивов используют числовые индексы, которые обычно начинаются с 0 или 1. В PHP ассоциативные массивы могут использовать строковые индексы. Оба типа массивов создаются с помощью конструкции array(). Массивы с числовыми индексами $my_array = array('red', 'green', 'blue'); Этот код создает массив с числовым индексом с именем $my_array. Массиву присваивается три элемента — red, green, и blue. Каждый элемент идентифицируется числовым индексом. $my_array[0] = 'red' // индекс 0 соответствует элементу red $my_array[1] = 'green' // индекс 1 соответствует элементу green $my_array[2] = 'blue' // индекс 2 соответствует элементу blue Чтобы получить доступ к содержимому массива, используется имя массива и индекс. Следующий код применяется для вывода значений переменной $my_array. <!DOCTYPE html PUBLIC "-//W3C//DTD/XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml11-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Страница Web </title> </head> <body>
<p>
<?php
$my_array = array('red', 'green', 'blue');
echo "Первое значение массива — ". $my_array[0];"<br/>"; echo "Второе значение массива — ". $my_array[1];"<br/>"; echo "Третье значение массива — ". $my_array[2];"<br/>";
?>
</p> </body> </html> Первое значение массива — red Второе значение массива — green Третье значение массива — blue Ассоциативные массивы Ассоциативные массивы позволяют использовать более полезные значения индекса. Для массивов с числовыми индексами значения индекса создаются автоматически, начиная с 0. Ассоциативные массивы допускают применение числовых и строковых значений индекса. Символ между индексом и значениями (=>) является знаком равенства, за которым сразу следует символ больше. $members = array('FName' => 'John', 'LName' => 'Smith', 'Age' => 50) В этом примере члены массива содержат три элемента, однако используются строковые индексы — FName, LName и Age. $members['FName'] = 'John' //индекс FName соответствует элементу John $members['LName'] = 'Smith' // индекс LName соответствует элементу Smith $members['Age'] = '50' // индекс Age соответствует элементу 50 Для доступа к содержимому массива используется имя массива и индекс. Следующий код применяется для вывода значений переменной $members. <!DOCTYPE html PUBLIC "-//W3C//DTD/XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml11-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Страница Web </title> </head> <body>
<p>
<?php
$members = array('FName' => 'John', 'LName' => 'Smith', 'Age' => 50);
echo "The user\'s first name is ". $members['FName']; echo "The user\'s last name is ". $members['LName']; echo "The user\'s age is ". $members['Age'];
?>
</p> </body> </html>
The user's first name is John The user's last name is Smith The user's age is 50
Воспользуйтесь поиском по сайту: ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|