Пример простой программы на php. Кэшируйте страницы, управляемые базой данных. Используйте инструменты визуализации баз данных

PHP в примерах - Стивен Хольцнер - 2007.

Вашему вниманию предлагается один из мировых бестселлеров, посвященных программированию на РНР. В рамках одной книги автору удалось, начав с основ языка РНР, охватить весьма широкий круг вопросов - от объектно-ориентированного программирования до сложной обработки web-форм, от сохранения данных сеанса работы до формирования e-mail. Теоретический материал излагается в компактной и сжатой форме, и основное место отдано практическим примерам использования богатых возможностей РНР.
Книга предназначена в основном для начинающих разработчиков на РНР, но и про-фессионат может найти в ней немало интересных моментов.

Введение
Об авторе
Глава 1. Введение в РНР
Доступ к РНР.
Локальная установка РНР
Настройка среды разработки.
Первый скрипт.
Запуск первого скрипта.
Возможные проблемы
РНРиHTML .
Отображение текста
Возможности отображения текста
Синтаксис heredoc
Запуск РНР в командной строке
Комментарии в скриптах
Переменные
Создание переменных
Интерполяция переменных в строках
Переменные, содержащие имена переменных
Константы
Типы данных.
Итоги
Глава 2. Операторы
Математические операторы.
Математические функции
Операторы присваивания
Увеличение и уменьшение
Приоритет операторов
Оператор исполнения
Строковые операторы
Битовые операторы
Условный оператор IF
Операторы сравнения
Логические операторы
Оператор ELSE.
Оператор ELSEIF
Тернарный оператор.
Оператор SWITCH
Циклы FOR
UnmibiWHILE
Циклы DO. . .WHILE.
Циклы FOREACH
Оператор BREAK
Оператор CONTINUE
Альтернативный синтаксис.
Итоги.
Глава 3. Строки и массивы
Функции обработки строк.
Использование строковых функций
Форматирование строк
Преобразование в строки и из строк.
Создание массивов
Модификация элементов массива
Удаление элементов массива
Перебор элементов массива.
Функции для работы с массивами
Сортировка массивов
Навигация по массивам
Преобразование строк в массивы и наоборот.
Извлечение переменных из массивов.
Слияние и разделение массивов.
Сравнение массивов
Обработка данных в массивах.
Многомерные массивы
Многомерные массивы и циклы
Операторы над массивами.
Итоги.
Глава 4. Функции
Создание функции
Передача данных в функцию
Передача массивов в функцию
Значения аргументов по умолчанию
Передача аргумента по ссылке
Функции с переменным количеством аргументов.
Функции, возвращающие значение
Функция, возвращающая массив
Использование списков
Функция, возвращающая ссылки
Локальные переменные.
Глобальные переменные
Статические переменные
Переменные, ссылающиеся на функции
Условное описание функций
Вложенные функции.
Вложенные файлы
Обработка ошибок
Итоги.
Глава 5. Элементы управления HTML
Создание web-форм
Текстовые поля.
Получение данных из текстовых полей
Многострочные поля.
Выключатели (checkboxes)
Переключатели (radio buttons)
Списки
Скрытые поля
Поля для паролей
Кнопка-изображение
Загрузка файлов.
Обработка загруженного файла
Кнопки: вариант 1
Кнопки: вариант 2
Кнопки: вариант 3
Итоги
Глава 6. Web-приложения
Отображение данных формы
Переменные сервера.
Заголовки HTTP.
Определение типа браузера.
Перенаправление.
Организация полей форм в массивы
Приложение из одной страницы
Проверка данных
Обязательное для заполнение поле
Проверка числовых полей.
Проверка строковых полей.
Удаление тегов HTML
Кодирование тегов HTML.
Сохранение данных
Использование JavaScript для проверки данных
HTTP-аутентификация
Итоги.
Глава 7. ООП и файлы
Классы и объекты
Создание класса.
Создание объекта
Управление доступом к свойствам и методам
Конструкторы объектов
Наследование классов
Наследование и защищенные методы
Перекрытие методов.
Доступ к методам базового класса
Открытие файла: fopen
Чтение строк текста: fgeta
Чтение символов: fgetc
Двоичное чтение файла: fread
Чтение файла целиком: filegetcontents
Синтаксический разбор файла: fscanf
Запись в файл: fwrite.
Добавление к файлу: fwrite.
Запись файла целиком: fileputcontents,
Итоги.
Глава 8. Базы данных
Базы данных
Основы SQL
Настройка РНР для работы с базами данных
Создание базы данных в MySQL
Добавление данных
Доступ к базе MySQL.
Создание базы данных
Создание новой таблицы
Добавление данных
Отображение данных.
Изменение данных
Сортировка данных
Удаление данных.
Установка модуля DB
Отображение данных при помощи DB.
Добавление данных при помощи DB.
Изменение данных при помощи DB.
Итоги
Глава 9. Cookie, сеансы, FTP, e-mail
Установка cookie
Чтение cookie.
Срок действия cookie
Удаление cookie
Использование FTP.
Список файлов каталога
Загрузка файла с FTP-сервера
Загрузка файла на FTP-сервер
Отправка e-mail
E-mail с дополнительными заголовками
E-mail с вложенными файлами
Сеансы.
Сохранение данных сеансов.
Создание счетчика посещений
Сеансы без cookie
Удаление данных сеанса
Итоги
Приложение А. Справочник по языку.
Создание скриптов.
Типы данных.
Переменные
Предопределенные переменные
Массивы
Операторы
Оператор if.
Оператор else.
Оператор else if
Оператор switch
Оператор while
Оператор do . . .while
Оператор for
Оператор f о reach.
Функции
Классы и объекты.
Приложение Б. Справочник функций.

Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу PHP в примерах - Стивен Хольцнер - fileskachat.com, быстрое и бесплатное скачивание.

Create a file named hello.php and put it in your web server"s root directory (DOCUMENT_ROOT) with the following content:

Example #1 Our first PHP script: hello.php



PHP Test


Hello World

" ; ?>

Use your browser to access the file with your web server"s URL, ending with the /hello.php file reference. When developing locally this URL will be something like http://localhost/hello.php or http://127.0.0.1/hello.php but this depends on the web server"s configuration. If everything is configured correctly, this file will be parsed by PHP and the following output will be sent to your browser:

PHP Test

Hello World

This program is extremely simple and you really did not need to use PHP to create a page like this. All it does is display: Hello World using the PHP echo statement. Note that the file does not need to be executable or special in any way. The server finds out that this file needs to be interpreted by PHP because you used the ".php" extension, which the server is configured to pass on to PHP. Think of this as a normal HTML file which happens to have a set of special tags available to you that do a lot of interesting things.

If you tried this example and it did not output anything, it prompted for download, or you see the whole file as text, chances are that the server you are on does not have PHP enabled, or is not configured properly. Ask your administrator to enable it for you using the Installation chapter of the manual. If you are developing locally, also read the installation chapter to make sure everything is configured properly. Make sure that you access the file via http with the server providing you the output. If you just call up the file from your file system, then it will not be parsed by PHP. If the problems persist anyway, do not hesitate to use one of the many options.

The point of the example is to show the special PHP tag format. In this example we used to indicate the start of a PHP tag. Then we put the PHP statement and left PHP mode by adding the closing tag, ?> . You may jump in and out of PHP mode in an HTML file like this anywhere you want. For more details, read the manual section on the basic PHP syntax .

Note : A Note on Line Feeds

Line feeds have little meaning in HTML, however it is still a good idea to make your HTML look nice and clean by putting line feeds in. A linefeed that follows immediately after a closing ?> will be removed by PHP. This can be extremely useful when you are putting in many blocks of PHP or include files containing PHP that aren"t supposed to output anything. At the same time it can be a bit confusing. You can put a space after the closing ?> to force a space and a line feed to be output, or you can put an explicit line feed in the last echo/print from within your PHP block.

Note : A Note on Text Editors

There are many text editors and Integrated Development Environments (IDEs) that you can use to create, edit and manage PHP files. A partial list of these tools is maintained at » PHP Editors List . If you wish to recommend an editor, please visit the above page and ask the page maintainer to add the editor to the list. Having an editor with syntax highlighting can be helpful.

Note : A Note on Word Processors

Word processors such as StarOffice Writer, Microsoft Word and Abiword are not optimal for editing PHP files. If you wish to use one for this test script, you must ensure that you save the file as plain text or PHP will not be able to read and execute the script.

Note : A Note on Windows Notepad

If you are writing your PHP scripts using Windows Notepad, you will need to ensure that your files are saved with the .php extension. (Notepad adds a .txt extension to files automatically unless you take one of the following steps to prevent it.) When you save the file and are prompted to provide a name for the file, place the filename in quotes (i.e. " hello.php "). Alternatively, you can click on the "Text Documents" drop-down menu in the "Save" dialog box and change the setting to "All Files". You can then enter your filename without quotes.

Now that you have successfully created a working PHP script, it is time to create the most famous PHP script! Make a call to the phpinfo() function and you will see a lot of useful information about your system and setup such as available predefined variables , loaded PHP modules, and configuration settings. Take some time and review this important information.

Example #2 Get system information from PHP

Шаг 3. С чего начинается Родина? (основы языка)

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

Вообще я потратил не мало времени за написанием скриптов на php и если это время можно измерить сотнями часов, то время, потраченное на поиск нужных функций или решение проблем с осуществлением каких-либо специфических операций, в общем время просиженной за документаций, как ни странно, не более одного часа! Так что еще раз повторю - не пугайтесь и флаг (очки) вам в руки.

Начнем с того, что для PHP сущестует 4-е способа отделения его от общего кода HTML (имеется ввиду для интерпретации).

Далее необходимо коненчо сказать и о том, что инструкции в PHP отделяются друг от друга сишно-паскалевско-перловым способом - точкой с запятой. Хотя перед закрывающим тегом (?>) точку с запятой ставит не обязательно.

Типы.

PHP поддерживает следующие типы данных:

  • integer (целочисленные)
  • floating-point numbers или double (числа с плавающей запятой)
  • string (строки, текст)
  • array (массивы)
  • object (обьекты)

Преобразование типов происходит следующим образом. Если переменной при равнивается строка (текст в кавычках) то эта переменная становится строковой. Если-жы с ней совершается одна из многих математических функций или она приравнивается численой переменой, она становится численной, причем если приравниваетс яне целому значению - то станет типом double. Пример:

Разрешенный преобразования:

  • (int), (integer) - cast to integer
  • (real), (double), (float) - cast to double
  • (string) - cast to string
  • (array) - cast to array
  • (object) - cast to object

К стати, определить тип переменной можно функциями gettype(), is_long(), is_double(), is_string(), is_array() и is_object().

Область видимости переменных.

Во-первых. Все переменные начинаются с символа $

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

Поясню на примере:

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

Ну а если вы хотите в функции использовать глобальные переменные, необходимо сделать так (декларировать с помощью оператора global):

Теперь в функции вы переопредилили глобальную переменную и вывод будет числа 2 и 2. Но есть и другой способ добраться до глобально-определенных данных - через ассоциативный массив $GLOBALS. Пример предыдущей программы, реализованный новым способом:

Обратите внимание переменная в массиве указывается без символа $

Кроме этог о PHP предоставляет возможность исопльзовать статические переменный. Все как в C/C++.

Данная запись означает, что переменной с именем a мы присваиваем значение "hello". Следующей операцией переменной с именем, хранящимся в переменной с именем a, то есть - переменной hello мы присваиваем занчение "world"

echo "$a ${$a}";

тоже самое, что и

echo "$a $hello";

В результаты мы получим на экране hello world

Дело ненмого усложняется, если вы хотите использовать подобные массивы. Ведь есл вы запишете $$a - интерпретатору надо будет знать, что использовать в качестве переменной - $a или $$a (имя, зранящееся в $a). В таком случаем вам прийдется исопльзовать следующий синтаксис - ${$a} в случае, если вы хотите использовать переменную с именем, зранящимся в массиве $a с индексмо 1 и ${$a} в другом случае (если вы хотите использовать элемент 1 массива с именем, зранящимся в переменной $a.

Надеюсь все понятно. Тогда переходим к следующей главе.