КОМПЬЮТЕРЫ И ИНТЕРНЕТ (последнее)
PHP - препроцессор гипертекстового протокола
Актуальные публикации по вопросам современных информационых технологий и развития компьютерных сетей, систем массовой коммуникации, электронно-вычислительной техники.
ФЕДОТОВ А.М. [ИНФОРМАЦИЯ ОБ АВТОРЕ >>>]
PHP - Препроцессор гипертекстового протокола
Содержание
Введение
Синтаксис PHP
Возможности языка
Обработка строк
Работа с файлами и процессами
Работа с базами данных
Документация по серверу Apache
Документация по PHP3 (User Manual)
Официальный сервер PHP
Введение
PHP (officially "PHP: Hypertext Preprocessor") - это система разработки (WEB приложений) для WEB сервера Apache - скриптовый язык, обрабатывающийся на стороне сервера, команды которого включаются непосредственно в текст HTML документа (server-side HTML-embedded scripting language).
PHP включает в себя CGI - интерфейс, интерпретатор языка и набор функций для доступа к базам данных и различным объектам на WWW сервере. На данный момент PHP является наиболее удобным и мощным (и достаточно популярным) средством разработки приложений WEB, включая разработку приложений связи с базами данных и построением полнофункциональных информационных систем в Интернет.
В настоящий момент используется язык и система PHP версии 3 (PHP3), но уже на стадии выхода в свет версия PHP4 (см. информацию на головном сервере PHP).
Система PHP устанавливается на Web-сервер в качестве отдельного модуля обработки (Server Parsed Document) определенного mime-типа ресурса, аналогично модулю SSI (Server Side Include) (см. настройки сервера).
PHP подобно client-side JavaScript представляет собой HTML документ с вставками команд языка PHP (точно так же как это делается в ASP технологии сервера MS IIS - только не ясно, кто предложил такую технологию раньше).
Пример:
Example
Благодаря этому, создание и отладка WEB приложений, использующих PHP технологию значительно проще, чем отладка и создание приложений на других языках (например C или Perl - если не принимать во внимания систему Mod_Perl сервера Apache).
Язык PHP, является С-подобным языком программирования, содержащим помимо основных конструкций языка функции обработки регулярных выражений (подобно Perl'у), поддержки библиотек классов, а так же обладает значительным набором стандартных функций и относительно большой гибкостью, что обеспечивает разработчику большие возможности при разработке WEB приложений.
Синтаксис PHP
По своему синтаксису язык PHP походит на классический С (или лучше сказать на Perl), хотя видны некоторые заимствования из Java. В PHP есть практически все операторы и функции, имеющиеся в стандартном GNU С (или их аналоги), например есть циклы (while, for), операторы выбора (if, switch), функции работы с файловой системой и процессами (fopen, *dir, stat, unlink, popen, exec), функции ввода-вывода (file, fgets, fputs, print*) и множество других.
Вставка команд PHP в HTML документ происходит после включения "PHP code mode":
Пример:
1. echo ("this is the simplest, an SGML processing instructionn"); ?>
2.
3.
4. <% echo ("You may optionally use ASP-style tags"); %>
<%= $variable; # This is a shortcut for "<%echo .." %>
Четвертый способ не является стандартным и работает только в случае когда при конфигурации интерпретатора было включено использование ASP-style tags.
Возможности языка
Существенным отличием PHP от C - является использование переменных, которое построено по аналогии с языком Perl. Конечно по набору разнообразных функций обработки текстов (или строк) PHP уступает Perl'у, хотя трудно найти ситуацию, в которой Вам будет не хватать мощи языка Perl.
В языке PHP отсутствует обязательная типизация переменных, хотя в некоторых случаях типизация может присутствовать. Тип переменной в каждом конкретном операторе зависит от контекста (если он не предопределен заранее), например переменная $str="10"; при использовании ее в операторе echo $str; будет иметь строковый тип, а в выражении типа $str=$str+1; будет преобразована в числовой.
Эта особенность PHP имеет свой смысл, связанный с обработкой результатов ввода HTML форм. В этом случае трудно определить первоначальный тип переменной, а с другой строны преобразования типов можно, если это не вызывает разночтений, можно поручить интерпретатору PHP.
Другой удобной возможностью PHP (что выгодно отличает его от Perl'a и ASP) является автоматический перенос переменных окружения и параметров HTML форм в переменные PHP, причем отпадает необходимость перевода URL-кодированных значений переменных в нормальные (что особенно важно для русскоязычных страниц), например при передаче скрипту параметра str=text%20with%20spaces по методу GET
GET /some_script.php?str=text%20with%20spaces HTTP/1.0
будет образована переменная $str="text with spaces";.
PHP имеет целый ряд встроенных функций для обработки объектов самого различного рода (см. PHP 3.0 Functions). Наиболее важными и часто используемыми являются функции обработки строк и регулярных выражений, функции работы с файлами и процессами и функции-драйверы работы с базами данных.
Ниже приводится несколько примеров использования функций языка PHP для построения WEB приложений.
Обработка строк
Работа со строками в PHP гораздо богаче, чем в С, хотя и беднее, чем в Perl'е, но этого вполне достаточно для написания большинства WEB ориентированных программ обработки текстов (чем трудно похвастаться VBasic, который лежит в основе ASP). В языке существуют практически все стандартные функции языка С, а так же наличиствует множество дополнительных функций и возможностей (которые в каком-то смысле являются подмножеством языка Perl), ориентированные на WEB приложения.
В частности конкатенация строк может осуществляется следующими операторами:
$result_str=$first_str."".$second_str;
или
$result_str="$first_str$second_str";
В качестве примеров полезных для работы в WEB функций могут служить функции htmlspecialchars(), преобразующая в строке символы типа & в последовательность & или функция urlencode(string str) преобразующая символы расширенной кодовой таблицы (например, содержащие символы русского алфавита) в последовательность %XX, где ХХ - шестнадцатеричный код символа. Очень важны, с точки зрения обработки запросов пользователя функции работы с регулярными выражениями, например, в результате работы оператора
$str = ereg_replace("/usr/local/([^/]*)/filename","1",
"/usr/local/dirname/filename");
мы получим строку
$str="dirname";
Или функции explode и split преобразования строк в массив значений (как в Perl'e).
В качестве примера использования языка PHP3 приведем программу формирования следующего элемента выбора:
Первый Второй Третий Четвертый Пятый
которая имеет следующий вид:
$Sa=explode(" ","Первый Второй Третий Четвертый Пятый");
echo "n";
?>
Работа с файлами и процессами
Работа с файлами в PHP практически ничем не отличается от работы с файлами в С, те-же самые функции работы с потоками или с блоковыми файлами: fopen, fclose, fread, fgets, fputs, fwrite, но есть одна маленькая, но очень приятная возможность работать с файлами по их URL адресам, например возможны следующие конструкции:
$line_string = file("http://www.ict.nsc.ru/welcome.html");
$fp = fopen("http://www.ict.nsc.ru/robot.txt", "r");
$fp = fopen( "ftp://ftp.ict.nsc.ru/CPAN/.listing", "r");
В первой конструкции в массив $line_string записывается текстовый файл (text/html) welcome.html, во втором и третьем случаях открывается дескриптор файла $fp (файл открывается на чтение).
В PHP имеется возможность использовать другие программы, используя командный интерпретатор UNIX'а, например для получения списка текущей директории использовать стандартную команду ls, или отправлять почту с помощью sendmail (хотя проще это делать, используя стандартную функцию PHP mail.
PHP позволяет создать процесс, и работать с его стандартным вводом или стандартным выводом как с обычным потоком: команда popen, например
$fp=popen("/bin/ls -l","r");
Работа с базами данных
В системе PHP работа с БД осуществляется в основном путем работы с различными SQL-серверами. В настоящий момент в библиотеке стандартных функций PHP содержатся драйвера ко всем наиболее распространенным СУБД (например, Oracle, Informix, syBase, PostgreSQL, MySql, MS SQL и много других -более 20). SQL-сервер в любом случае рассматривается как удаленный, то есть создается сетевое соединение. Благодаря этому возможно открывать из одного скрипта либо несколько пользовательских сессий, либо работать с различными SQL-серверами. После установки соединения с сервером, выбирается рабочая база данных, после чего можно отправлять и обрабатывать запросы (так как SQL является клиент-серверной архитектурой, любая работа с данными осуществляется с помощью запросов к SQL-серверу на получение или изменение данных). При выполнении запроса создается некий объект, в котором хранится результат выполнения запроса, после чего можно получать отдельные ряды, путем выполнения специальных функций.
PHP - Препроцессор гипертекстового протокола
Содержание
Введение
Синтаксис PHP
Возможности языка
Обработка строк
Работа с файлами и процессами
Работа с базами данных
Документация по серверу Apache
Документация по PHP3 (User Manual)
Официальный сервер PHP
Введение
PHP (officially "PHP: Hypertext Preprocessor") - это система разработки (WEB приложений) для WEB сервера Apache - скриптовый язык, обрабатывающийся на стороне сервера, команды которого включаются непосредственно в текст HTML документа (server-side HTML-embedded scripting language).
PHP включает в себя CGI - интерфейс, интерпретатор языка и набор функций для доступа к базам данных и различным объектам на WWW сервере. На данный момент PHP является наиболее удобным и мощным (и достаточно популярным) средством разработки приложений WEB, включая разработку приложений связи с базами данных и построением полнофункциональных информационных систем в Интернет.
В настоящий момент используется язык и система PHP версии 3 (PHP3), но уже на стадии выхода в свет версия PHP4 (см. информацию на головном сервере PHP).
Система PHP устанавливается на Web-сервер в качестве отдельного модуля обработки (Server Parsed Document) определенного mime-типа ресурса, аналогично модулю SSI (Server Side Include) (см. настройки сервера).
PHP подобно client-side JavaScript представляет собой HTML документ с вставками команд языка PHP (точно так же как это делается в ASP технологии сервера MS IIS - только не ясно, кто предложил такую технологию раньше).
Пример:
Благодаря этому, создание и отладка WEB приложений, использующих PHP технологию значительно проще, чем отладка и создание приложений на других языках (например C или Perl - если не принимать во внимания систему Mod_Perl сервера Apache).
Язык PHP, является С-подобным языком программирования, содержащим помимо основных конструкций языка функции обработки регулярных выражений (подобно Perl'у), поддержки библиотек классов, а так же обладает значительным набором стандартных функций и относительно большой гибкостью, что обеспечивает разработчику большие возможности при разработке WEB приложений.
Синтаксис PHP
По своему синтаксису язык PHP походит на классический С (или лучше сказать на Perl), хотя видны некоторые заимствования из Java. В PHP есть практически все операторы и функции, имеющиеся в стандартном GNU С (или их аналоги), например есть циклы (while, for), операторы выбора (if, switch), функции работы с файловой системой и процессами (fopen, *dir, stat, unlink, popen, exec), функции ввода-вывода (file, fgets, fputs, print*) и множество других.
Вставка команд PHP в HTML документ происходит после включения "PHP code mode":
Пример:
1. echo ("this is the simplest, an SGML processing instructionn"); ?>
2.
3.
4. <% echo ("You may optionally use ASP-style tags"); %>
<%= $variable; # This is a shortcut for "<%echo .." %>
Четвертый способ не является стандартным и работает только в случае когда при конфигурации интерпретатора было включено использование ASP-style tags.
Возможности языка
Существенным отличием PHP от C - является использование переменных, которое построено по аналогии с языком Perl. Конечно по набору разнообразных функций обработки текстов (или строк) PHP уступает Perl'у, хотя трудно найти ситуацию, в которой Вам будет не хватать мощи языка Perl.
В языке PHP отсутствует обязательная типизация переменных, хотя в некоторых случаях типизация может присутствовать. Тип переменной в каждом конкретном операторе зависит от контекста (если он не предопределен заранее), например переменная $str="10"; при использовании ее в операторе echo $str; будет иметь строковый тип, а в выражении типа $str=$str+1; будет преобразована в числовой.
Эта особенность PHP имеет свой смысл, связанный с обработкой результатов ввода HTML форм. В этом случае трудно определить первоначальный тип переменной, а с другой строны преобразования типов можно, если это не вызывает разночтений, можно поручить интерпретатору PHP.
Другой удобной возможностью PHP (что выгодно отличает его от Perl'a и ASP) является автоматический перенос переменных окружения и параметров HTML форм в переменные PHP, причем отпадает необходимость перевода URL-кодированных значений переменных в нормальные (что особенно важно для русскоязычных страниц), например при передаче скрипту параметра str=text%20with%20spaces по методу GET
GET /some_script.php?str=text%20with%20spaces HTTP/1.0
будет образована переменная $str="text with spaces";.
PHP имеет целый ряд встроенных функций для обработки объектов самого различного рода (см. PHP 3.0 Functions). Наиболее важными и часто используемыми являются функции обработки строк и регулярных выражений, функции работы с файлами и процессами и функции-драйверы работы с базами данных.
Ниже приводится несколько примеров использования функций языка PHP для построения WEB приложений.
Обработка строк
Работа со строками в PHP гораздо богаче, чем в С, хотя и беднее, чем в Perl'е, но этого вполне достаточно для написания большинства WEB ориентированных программ обработки текстов (чем трудно похвастаться VBasic, который лежит в основе ASP). В языке существуют практически все стандартные функции языка С, а так же наличиствует множество дополнительных функций и возможностей (которые в каком-то смысле являются подмножеством языка Perl), ориентированные на WEB приложения.
В частности конкатенация строк может осуществляется следующими операторами:
$result_str=$first_str."".$second_str;
или
$result_str="$first_str$second_str";
В качестве примеров полезных для работы в WEB функций могут служить функции htmlspecialchars(), преобразующая в строке символы типа & в последовательность & или функция urlencode(string str) преобразующая символы расширенной кодовой таблицы (например, содержащие символы русского алфавита) в последовательность %XX, где ХХ - шестнадцатеричный код символа. Очень важны, с точки зрения обработки запросов пользователя функции работы с регулярными выражениями, например, в результате работы оператора
$str = ereg_replace("/usr/local/([^/]*)/filename","1",
"/usr/local/dirname/filename");
мы получим строку
$str="dirname";
Или функции explode и split преобразования строк в массив значений (как в Perl'e).
В качестве примера использования языка PHP3 приведем программу формирования следующего элемента выбора:
Первый Второй Третий Четвертый Пятый
которая имеет следующий вид:
$Sa=explode(" ","Первый Второй Третий Четвертый Пятый");
echo "n";
?>
Работа с файлами и процессами
Работа с файлами в PHP практически ничем не отличается от работы с файлами в С, те-же самые функции работы с потоками или с блоковыми файлами: fopen, fclose, fread, fgets, fputs, fwrite, но есть одна маленькая, но очень приятная возможность работать с файлами по их URL адресам, например возможны следующие конструкции:
$line_string = file("http://www.ict.nsc.ru/welcome.html");
$fp = fopen("http://www.ict.nsc.ru/robot.txt", "r");
$fp = fopen( "ftp://ftp.ict.nsc.ru/CPAN/.listing", "r");
В первой конструкции в массив $line_string записывается текстовый файл (text/html) welcome.html, во втором и третьем случаях открывается дескриптор файла $fp (файл открывается на чтение).
В PHP имеется возможность использовать другие программы, используя командный интерпретатор UNIX'а, например для получения списка текущей директории использовать стандартную команду ls, или отправлять почту с помощью sendmail (хотя проще это делать, используя стандартную функцию PHP mail.
PHP позволяет создать процесс, и работать с его стандартным вводом или стандартным выводом как с обычным потоком: команда popen, например
$fp=popen("/bin/ls -l","r");
Работа с базами данных
В системе PHP работа с БД осуществляется в основном путем работы с различными SQL-серверами. В настоящий момент в библиотеке стандартных функций PHP содержатся драйвера ко всем наиболее распространенным СУБД (например, Oracle, Informix, syBase, PostgreSQL, MySql, MS SQL и много других -более 20). SQL-сервер в любом случае рассматривается как удаленный, то есть создается сетевое соединение. Благодаря этому возможно открывать из одного скрипта либо несколько пользовательских сессий, либо работать с различными SQL-серверами. После установки соединения с сервером, выбирается рабочая база данных, после чего можно отправлять и обрабатывать запросы (так как SQL является клиент-серверной архитектурой, любая работа с данными осуществляется с помощью запросов к SQL-серверу на получение или изменение данных). При выполнении запроса создается некий объект, в котором хранится результат выполнения запроса, после чего можно получать отдельные ряды, путем выполнения специальных функций.
Опубликовано 28 сентября 2004 года
Новые статьи на library.by:
КОМПЬЮТЕРЫ И ИНТЕРНЕТ:
Комментируем публикацию: PHP - препроцессор гипертекстового протокола
подняться наверх ↑
ССЫЛКИ ДЛЯ СПИСКА ЛИТЕРАТУРЫ
Стандарт используется в белорусских учебных заведениях различного типа.
Для образовательных и научно-исследовательских учреждений РФ
Прямой URL на данную страницу для блога или сайта
Полностью готовые для научного цитирования ссылки. Вставьте их в статью, исследование, реферат, курсой или дипломный проект, чтобы сослаться на данную публикацию №1096362992 в базе LIBRARY.BY.
подняться наверх ↑
ПАРТНЁРЫ БИБЛИОТЕКИ рекомендуем!
подняться наверх ↑
ОБРАТНО В РУБРИКУ?
Уважаемый читатель! Подписывайтесь на LIBRARY.BY в VKновости, VKтрансляция и Одноклассниках, чтобы быстро узнавать о событиях онлайн библиотеки.
Добавить статью
Обнародовать свои произведения
Редактировать работы
Для действующих авторов
Зарегистрироваться
Доступ к модулю публикаций