русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Ассоциативные массивы


Дата добавления: 2013-12-23; просмотров: 1574; Нарушение авторских прав


PHP5

PHP4

PHP3

PHP 3.0 была первой версией, напоминающей PHP, каким мы знаем его сегодня. В 1997 году Энди Гутманс (Andi Gutmans) и Зив Сураски (Zeev Suraski) переписали код с начала: разработчики сочли PHP/FI 2.0 не пригодным для разработки приложения электронной коммерции, над которым они работали для проекта Университета. Для совместной работы над PHP 3.0 с помощью базы разработчиков PHP/FI 2.0 Энди, Расмус и Зив решили объединиться и объявить PHP 3.0 официальным преемником PHP/FI, разработка же PHP/FI была практически полностью прекращена.

Одной из сильнейших сторон PHP 3.0 была возможность расширения ядра. В последствии интерфейс написания расширений привлек к PHP множество сторонних разработчиков, работающих над своими модулями, что дало PHP возможность работать с огромным количеством баз данных, протоколов, поддерживать большое число API. Фактически, это и был главный ключ к успеху, но стоит добавить, что немаловажным шагом оказалась разработка нового, намного более мощного и полного синтаксиса с поддержкой ООП.

Абсолютно новый язык программирования получил новое имя. Разработчики отказались от дополнения о персональном использовании, которое имелось в аббревиатуре PHP/FI. Язык был назван просто 'PHP' -- аббревиатура, содержащая рекурсивный акроним: 'PHP: Hypertext Preprocessor' (PHP: Препроцессор Гипертекста).

Первая статья о PHP была опубликована в чешском варианте 'Computerworld' весной 1998 и освещала PHP 3.0. Как и в случае с книгами, эта была первая в серии статья из множества посвященных PHP и опубликованных в различных известных журналах.

К концу 1998, PHP использовался десятками тысяч пользователей. Сотни тысяч web-сайтов сообщали о том, что они работают с использованием языка. В то время PHP 3.0 был установлен приблизительно на 10% серверах Интернета!



PHP 3.0 был официально выпущен в июне 1998 года после 9 месяцев публичного тестирования.

К зиме 1998 года, практически сразу после официального выхода PHP 3.0, Энди Гутманс и Зив Сураски начали переработку ядра PHP. В задачи входило увеличение производительности сложных приложений и улучшение модульности базиса кода PHP. Расширения дали PHP 3.0 возможность успешно работать с набором баз данных и поддерживать большое количество различных API и протоколов, но PHP 3.0 не имел качественной поддержки модулей и приложения работали не эффективно.

Новый движок, названный 'Zend Engine' (www.zend.com) (от имен создателей: Zeev и Andi), успешно справлялся с поставленными задачами и впервые был представлен в середине 1999 года. PHP 4.0, основанный на этом движке и принесший с собой набор дополнительных функций, официально вышел в мае 2000 года, почти через два года после выхода своего предшественника PHP 3.0. В дополнение к улучшению производительности, PHP 4.0 имел еще несколько ключевых нововведений, таких как поддержка сессий, буферизация вывода, более безопасные способы обработки вводимой пользователем информации и несколько новых языковых конструкций.

Сегодня PHP используется сотнями тысяч разработчиков. Миллионы (!) сайтов сообщают о работе с PHP. Эти, а также многие другие факты, позволяют с уверенностью сказать, что PHP является одним из самых популярных языков web-программирования!

Группа разработчиков PHP состоит из множества людей, работающих над ядром и расширениями PHP, и смежными проектами, такими, как PEAR и документации языка.

Недавно вышла новая, пятая версия PHP (PHP5). PHP5 использует новую версию «движка» Zend – Zend Engine 2.

В PHP5 объектная модель была значительно переработана. При этом было добавлено много новых возможностей, благодаря которым PHP5 получил некоторые черты таких объектно-ориентированных языков, как C++ и Java.

Изменения коснулись производительности встроенных стандартных функций PHP. По некоторым оценкам, скорость работы стандартных функций в PHP5 увеличилась на 40% и более.

Появились новые директивы файла настройки php.ini .Претерпела изменения и поддержка потоков. Были добавлены новые функции, а также функции графической библиотеки GD.

Поддержка XML в версии PHP5 стала полной, поддерживаются новые расширения DOM и XML.

Подробную информацию о PHP5 можно узнать здесь.

Первая программа на PHP

Итак, будем считать, что для написания первой программы на PHP у вас все готово: установлен и настроен веб-сервер и интерпретатор PHP. Если нет, то мы вам поможем, чтобы процесс установки и настойки программного обеспечения не был для вас сложным. Прочитайте инструкцию по быстрой и простой установке и настройке web-сервера и PHP.

Если все готово для работы с PHP, то начнем.

Традиционно, знакомство с языком программирования начинают с пресловутой программы "Hello, World!". Что ж, мы не будем отступать от этой традиции, и напишем нашу первую программу на PHP!

Итак, берем редактор PHP-кода (сойдет и простой текстовый редактор), и напишем следующий PHP код:

<?php
echo "Hello, World!";
?>

Прежде, чем запустить программу, ее нужно установить на сервере. Для этого сохраните написанный PHP скрипт под названием start.php. Затем скопируйте его в каталог DocumentRoot вашего сервера. По умолчанию, в Linux таким каталогом является /var/www/html (в старых версиях Linux - /home/httpd/html/). В Windows расположение каталога зависит от типа установленного web-сервера и его настроек. Теперь наберите в адресной строке вашего браузера http://localhost/start.php и, если все установлено и настроено правильно, вы увидите текст Hello, World!

Увидели? Если да, то поздравляем, вы написали первую простейшую программу (скрипт) на PHP!

А теперь разберем код нашего простейшего скрипта.

Код PHP заключается в специальные теги <? и ?> Начало скрипта отмечается открывающим тегом <? , а конец - ?> После открывающего тега <? следует первый оператор echo, который осуществляет вывод информации на экран. Оператор echo можно назвать самым главным, ведь он выводит информацию в браузер, в результате его работы мы и видим наш Hello, World!

Теперь давайте несколько усложним наш скрипт, добавив в него вывод html-тегов:

<?php
echo "<html><body>";
echo "<h1>Hello, World!</h1>";
echo "</body></html>";
?>

Наш несколько модифицированный скрипт теперь будет выводить большими буквами текст Hello, World!

Настало время вывести текст на русском языке. Вы, наверняка, спросите, а почему мы сразу не могли вывести текст на русском языке? Ответ заключается в том, что текст на русском языке, без указания определенного заголовка html-документа, может быть выведен некорректно. А теперь давайте, наконец, изменим наш скрипт так, чтобы он мог приветствовать нас на русском языке:

<?php
echo "<html><head>";
echo '<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">';
echo "<title>Моя первый PHP скрипт</title>";
echo "</head>";
echo "<body>";
echo "<h1>Привет! Я PHP скрипт!</h1>";
echo "</body>";
echo "</html>";
?>

Будьте внимательны, во второй строке кода html-код заключен в апострофы, а не в кавычки! Этим мы даем интерпретатору понять, что оператор echo должен выводить символы как есть, то есть не разбирая код в апострофах. А вот строки в кавычках позволяют выводить значения переменных, информацию по которым вы найдете здесь.

В приведенном скрипте мы послали браузеру заголовок <head><meta....></head>, который дает понять браузеру, какую мы будем использовать кодировку для вывода текста html-документа, а также указали текст заголовка браузера: <title>Мой первый PHP скрипт</title>. А затем вывели текст на русском языке: <body><h1>Привет! Я PHP скрипт!</h1></body>.

Вообще, теги можно и не выводить с помощью оператора echo. Мы можем вставлять PHP-код непосредственно в html-содержимое. Но, это тема нашего следующего раздела.

PHP в HTML-документах

Если вы рассмотрели предыдущюю страницу, то увидели, что всю информацию, включая html-код, мы выводили с помощью оператора echo. Однако PHP-скрипты можно писать и по-другому. Рассмотрим пример:

<html>
<head>
<title>Пример</title>
</head>
<body>

<?php
echo "Привет, я - скрипт PHP!";
?>

</body>
</html>

Теперь вы можете сохранить приведенный PHP скрипт на сервере в виде файла .php, например start.php и проверить результат.

Html-код будет корректно обрабатываться интерпретатором PHP, поэтому у вас не будут возникать ошибки при выполнении этого скрипта.

Когда PHP обрабатывает файл, он просто передаёт его текст, пока не встретит один из специальных тегов, который сообщает ему о необходимости начать интерпретацию текста как кода PHP. Затем он выполняет весь найденный код до закрывающего тега, говорящего интерпретатору, что далее снова идет просто текст. Этот механизм позволяет вам внедрять PHP-код в HTML - все за пределами тегов PHP остается неизменным, тогда как внутри - интерпретируется как PHP код.

Существует четыре набора тегов, которые могут быть использованы для обозначения PHP-кода. Из них только два (<?php. . .?> и <script language="php">. . .</script>) всегда доступны; другие могут быть включены или выключены в конфигурационном файле php.ini. Хотя короткие теги и теги в стиле ASP могут быть удобны, они не так переносимы, как длинные версии. Кроме того, если вы намереваетесь вставлять PHP-код в XML или XHTML, чтобы соответствовать XML, вам следует использовать форму <?php. . .?>.

Теги, поддерживаемые PHP:

1. <?php echo("если вы хотите работать с документами XHTML или XML, делайте так\n"); ?>

2. <? echo ("это простейшая инструкция обработки SGML\n"); ?>
<?= выражение ?> Это синоним для "<? echo выражение ?>"

3. <script language="php">
echo ("некоторые редакторы (например, FrontPage) не
любят инструкции обработки");
</script>

4. <% echo ("Вы можете по выбору использовать теги в стиле ASP"); %>
<%= $variable; # Это синоним для "<% echo . . ." %>

Первый способ, <?php. . .?>, наиболее предпочтительный, так как он позволяет использовать PHP в коде, соответствующем правилам XML, таком как XHTML.

Второй способ не всегда доступен. Короткие теги доступны только когда они включены. Это можно сделать, используя функцию short_tags() (только в PHP 3), включив установку short_open_tag в конфигурационном файле PHP, либо скомпилировав PHP с параметром --enable-short-tags для configure. Даже если оно включено по умолчанию в php.ini-dist, использование коротких тегов не рекомендуется.

Четвертый способ доступен только если теги в стиле ASP были включены, используя конфигурационную установку asp_tags.

Замечание: Поддержка тегов в стиле ASP была добавлена в версии PHP 3.0.4.

Замечание: Следует избегать использования коротких тегов при разработке приложений или библиотек, предназначенных для распространения или размещения на PHP-серверах, не находящихся под вашим контролем, так как короткие теги могут не поддерживаться на целевом сервере. Для создания переносимого, совместимого кода, не используйте короткие теги.

Закрывающий тег блока PHP-кода включает сразу следующий за ним перевод строки, если он имеется. Кроме того, закрывающий тег автоматически подразумевает точку с запятой; вам не нужно заканчивать последнюю строку кода в блоке точкой с запятой. Закрывающий тег PHP-блока в конце файла не является обязательным.

PHP позволяет использовать такие структуры:

Профессиональная вставка:

<?php
if ($expression) {
?>
<strong>Это истина.</strong>
<?php
} else {
?>
<strong>Это ложь.</strong>
<?php
}
?>

Этот код работает так, как ожидается, потому что когда PHP встречает закрывающие теги ?>, он просто выводит все, что он находит до следующего открывающего тега. Приведенный пример более эффективен для вывода больших блоков текста, чем отправка всего текста через echo(), print() или что-либо подобное.

Комментарии в PHP-скриптах

Написание практически любой программы не обходится без комментариев.

PHP поддерживает комметарии в стиле 'C', 'C++' и оболочки Unix.

Комментарии в PHP могут быть трех типов:

<?php
echo "Это тест"; // Это однострочный комментарий в стиле c++
/* Это многострочный комментарий
еще одна строка комментария */
echo "Это еще один тест";
echo "Последний тест"; # Это комментарий в стиле оболочки Unix
?>

Однострочные комментарии идут только до конца строки или текущего блока PHP-кода.

<h1>Это <?php # echo "простой";?> пример.</h1>
<p>Заголовок вверху выведет 'Это пример'.

Будьте внимательны, следите за отсутствием вложенных 'C'-комментариев, они могут появиться во время комментирования больших блоков:

<?php
/*
echo "Это тест"; /* Этот комментарий вызовет проблему */
*/
?>

Однострочные комментарии идут только до конца строки или текущего блока PHP-кода, в зависимости от того, что идет перед ними. Это означает, что HTML-код после // ?> БУДЕТ напечатан: ?> выводит из режима PHP и возвращает в режим HTML, но // не позволяет этого сделать.

Переменные в PHP

Почти в любом языке программирования существует такое понятие, как переменная.

При программировании на PHP можно не скупиться на объявление новых переменных. Принципы экономии памяти, которые были актуальны несколько лет назад, сегодня в расчет не принимаются. Однако, при хранении в переменных больших объемов памяти, лучше удалять неиспользуемые переменные, используя оператор Unset.

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

Имена всех переменных в PHP должны начинаться со знака $ — так интерпретатору значительно легче "понять" и отличить их, например, в строках. Имена переменных чувствительны к регистру букв: например, $var — не то же самое, что $Var или $VAR:

<?php
$var = "Bob";
$Var = "Joe";
echo "$var, $Var"; // выведет "Bob, Joe"

$4site = 'not yet'; // неверно; начинается с цифры
$_4site = 'not yet'; // верно; начинается с символа подчеркивания
$tдyte = 'mansikka'; // верно; 'д' это (Дополнительный) ASCII 228.
?>

Информацию о способах присвоения переменным PHP значений смотрите в разделе Выражения.

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

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

Теперь пора узнать, какие типы данных (переменных) поддерживает PHP. Переходите к следующей странице.

Типы данных в PHP

PHP поддерживает восемь простых типов данных (переменных):

Четыре скалярных типа:

  • boolean (двоичные данные)
  • integer (целые числа)
  • float (число с плавающей точкой или 'double')
  • string (строки)

Два смешанных типа:

  • array (массивы)
  • object (объекты)

И два специальных типа:

  • resource (ресурсы)
  • NULL (пустой тип)

Существуют также несколько псевдотипов:

  • mixed (смешанный тип)
  • number (числа)
  • callback (обратного вызова)

Рассмотрим кратко перечисленные типы данных PHP.

Тип Boolean (двоичные данные)

Это простейший тип. Он выражает истинность значения - это может быть либо TRUE, либо FALSE. Булев тип был введен в PHP 4.

Чтобы определить булев тип, используйте ключевое слово TRUE или FALSE. Оба регистро-независимы.

<?php
$x = True; // присвоить $x значение TRUE
?>

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

<?php
// == это оператор, который проверяет
// эквивалентность и возвращает булево значение
if ($action == "показать_версию") {
echo "Версия 1.23";
}

// это не обязательно...
if ($show_separators == TRUE) {
echo "<hr>\n";
}

// ...потому что вы можете просто написать
if ($show_separators) {
echo "<hr>\n";
}
?>

Тип integer (целые числа)

Целое это число из множества Z = {..., -2, -1, 0, 1, 2, ...}, обычно длиной 32 бита (от –2 147 483 648 до 2 147 483 647).

Целые могут быть указаны в десятичной, шестнадцатеричной или восьмеричной системе счисления, по желанию с предшествующим знаком (- или +).

Если вы используете восьмеричную систему счисления, вы должны предварить число 0 (нулем), для использования шестнадцатеричной системы нужно поставить перед числом 0x.

<?php
$a = 1234; // десятичное число
$a = -123; // отрицательное число
$a = 0123; // восьмеричное число (эквивалентно 83 в десятичной системе)
$a = 0x1A; // шестнадцатеричное число (эквивалентно 26 в десятичной системе)
?>

Тип float (числа с плавающей точкой)

Double - вещественное число довольно большой точности (ее должно хватить для подавляющего большинства математических вычислений).

Числа с плавающей точкой (они же числа двойной точности или действительные числа) могут быть определены при помощи любого из следующих синтаксисов:

<?php
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
?>

Тип string (строки)

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

Строка легко может быть обработана при помощи стандартных функций, можно также непосредственно обратиться к любому ее символу.

Пример строковой переменной:

<?
$a = "Это просто текст, записанный в строковую переменную";
echo $a; //Выводит 'Это просто текст, записанный в строковую переменную'
?>

Тип array (массивы)

Массив в PHP - это упорядоченный набор данных, в котором установлено соответствие между значением и ключом.

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

PHP позволяет создавать массивы любой сложности. Рассмотрим некоторые примеры:

Простой массив (список)

Массивы, индексами которых являются числа, начинающиеся с нуля - это списки:

<?php
// Простой способ инициализации массива
$names[0]="Апельсин";
$names[1]="Банан";
$names[2]="Груша";
$names[3]="Помидор";
// Здесь: names - имя массива, а 0, 1, 2, 3 - индексы массива
?>

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

Массивы, индексами которых являются строки, называются ассоциативными массивами. Индексы ассоциативных массивов называются ключами. Пример ассоциативного массива:

<?php
// Ассоциативный массив
$names["Иванов"]="Иван";
$names["Сидоров"]="Николай";
$names["Петров"]="Петр";
// В данном примере: фамилии - ключи ассоциативного массива
// , а имена - элементы массива
?>



<== предыдущая лекция | следующая лекция ==>
Бесплатное распространение | Многомерные массивы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.008 сек.