Страница 47 из 813 В этой главе обсуждается работа написанных на PHP Web-программ. Можно запускать PHP-программы из командной строки, если имеется доступ к системе, на которой PHPустановлен. Эта тема рассматривалась в главе 1. Часто умалчивают об одном важном факте:в один момент времени может работать только один PHP-файл (поскольку только один файл может одновременно запрашиваться с сервера), а это означает, что даже если на сервере существует множество PHP-файлов, каждый из них должен функционировать как одна небольшая программа. Можно подключать к этой программе другие PHP-файлы, используя конструкции include или require (как это сделать, будет показано далее), однако на самом деле при этом код внешних файлов только копируется, а в качестве программы выполняется всего один файл. Это не является серьезным ограничением, но об этом стоит упомянуть, потому что все данные и переменные теряются каждый раз после обработки одной страницы и выполнения HTTP-запроса. Существует способ сохранения данных между запросами страницы (с помощью сеансов), но нужно четко понимать идею "один файл — одна программа''. Любую программу, которая взаимодействует с сервером, можно назвать клиентской программой, а любую программу, которая обслуживает клиентские программы, можно назвать сервером. На практике некоторые программы работают и как клиенты, и как серверы. Однако широко распространенные программы, такие как браузеры, FTP-программы и e-mail-программы, являются клиентскими и для выполнения своих функций они инициируют соединение с сервером. Серверы, к которым они обычно подключаются, являются Web-серверами, FTP-серверами и почтовыми серверами соответственно. Клиент-серверная связь важна для PHP, так как весь PHP-код выполняется на сервере, тогда как HTML и/или JavaScript-код внутри Web-страниц передается клиенту нетронутым для обработки на стороне последнего. Технически можно отправлять браузеру для обработки нетронутый PHP-код, однако это не будет работать, так как у большинства пользователей нет возможности обработки PHP-кода в браузере. Одним из главных преимуществ, связанных с тем, что PHP-код обрабатывается на сервере, является то, что в отличие от использования JavaScript, конечный пользователь не имеет возможности просмотреть исходный код программы. Web-соединения:Internet-протоколы и HTTP Internet-протоколы определяют формат для всех Internet-соединений между компьютерами. Это означает, что для того чтобы один компьютер мог обмениваться данными с другим компьютером через Internet, оба компьютера должны использовать для этого обмена данными один и тот же язык. Для передачи файлов используется FTP (File Transfer Protocol— протокол передачи файлов), а для Web-коммуникаций применяется HTTP (HyperText Transfer Protocol — протокол передачи гипертекста). В нескольких последующих разделах представлено введение в Internet-протоколы и описывается, как они способствуют обмену данными в Web-среде. Хорошее понимание происходящего между браузером и сервером является неотъемлемым для Web-программирования, потому что внутри запросов и ответов, которые пересылаются от клиента к серверу и обратно, имеется множество полезных данных, и эти данные можно перехватывать и использовать в программе.
|