|
<html>
<head>
<title>PHP. Шаг за шагом.</title>
<meta content="text/html; charset=Windows-1251" http-equiv=Content-Type>
</head>
<body text=black bgcolor=white link=blue vlink=blue alink=red>
<font color=red><h2 align=center>Шаг 8. Заканчиваем обзор.</h2></font>
<p>Однако, продолжим рассмотрение (вернее, беглый обзор - что называется, голопом по европам) функций <b>PHP</b>.
<ol start=8>
<li>Функции доступа к <b>dbm</b>-базам.
<li>Функции даты и времени: получить, проверить правильность, вывести в формате.
<li><b>Dbase</b>-функции. Ну тут стандартный <b>dbase</b>-, <b>clipper</b>-, и_иже_с_ними-набор: открыть/закрыть, читать/писать/заменять/добавлять/удалять записи, получить количества колонок и записей в таблице.
<li>Функции для работы с директориями: открыть/закрыть, читать, сменить каталог.
<li>Так называемые <b>dl</b>-функции (вернее, одна единственная функция) - динамическая загрузка <b>PHP</b>-библиотеки в рунтайме. Статическая загрузка предполагает наличие в <b>ini</b>-файле <b>PHP</b> указания на загружаемые модули (разделы "<b>extension</b>" - сами модули, - и "<b>extension_dir</b>" - где эти модули искать).
<li>Работа с <b>DOM</b>-объектами для <b>XML</b>-документов (для <b>PHP</b> 4-ой версии).
<li>Один из самых многочисленных разделов - группа функций работы с файловой системой. С этой группой мы еще не раз столкнемся. Я думаю, этой группе следует посвятить отдельный шаг.
<li><b>FTP</b>-функции поддерживают весь стандартный набор команд <b>ftp</b>-протокола.
<li>Чрезвычайно ценные <b>HTTP</b>-функции (их всего 3) позволяют управлять <b>HTTP</b>-заголовком. Вот пример, в котором без функции <b>header()</b> вообще нельзя обойтись. Вы формируете картинку <b>PHP</b>-кодом (до <b>image</b>-функций мы еще доберемся). Если не сказать перед передачей картинки браузеру <b>header("Content-type: image/gif")</b>, то в заголовке <b>HTTP</b>-запроса будет утверждаться, что пришедший от сервера файл имеет тип <b>text/html</b>.
<li><b>Image</b>-функции позволяют создавать <b>PNG</b>- и <b>Jpeg</b>-файлы "налету" (поддержка <b>gif</b>-формата с 4-ой версии PHP прекращена в связи с проблемой лицензирования; впрочем, существуют сборки <b>php_gd.dll</b> с поддержкой <b>gif</b>-ов), рисовать графические примитивы, выводить в картинке текст и читать существующие картинки.
<li><b>IMAP</b>-функции позволяют работать с <b>imap</b>-ящиками (чтение, проверка, посылка письма, работа с заголовками писем, с почтовыми ящиками, <b>ping</b>-и, <b>mail</b>-адреса, всякие там <b>en-/decode</b>, <b>base64</b> и прочее).
<li>Математические функции (а как же без них!)
<li>Функции шифрования и хеш-функции (список поддерживаемых алгоритмов занимает 2 строки).
<li>Что называется, минеслаус-функции: проверка коннекта, <b>define</b>-функции, <b>eval</b> (выполнение строки как скрипта), работа с аргументами функций (4-я версия), сериализация, <b>sleep</b> и пр.
<li><b>MySQL</b>-функции. Им будут посвящены несколько шагов.
<li>Сетевые функции: <b>NDS</b>, <b>ip</b>-адреса, связь номера и имени сетевого протокола и пр.
<li><b>ODBC</b>-функции
<li>Очень полезная группа функций, возвращающих информацию о состоянии и настройках <b>PHP</b>-интерпретатора, записывающих сообщения в <b>log</b>-файлы, читающих окружения интерпретатора. Самая эффектная - <b>phpinfo()</b> ;). Откройте в браузере файл <a href=http://localhost/info.php3>http://localhost/info.php3</a>, содержащий такой текст:<pre> <html><body><?php phpinfo(); ?> </body></html></pre>Увидите чудо!
<li>Четыре функции для запуска внешних программ. Вернее три, четвертая (<b>escapeshellcmd</b>) предназначена для экранирования символов "<", ">", "|" и некоторых других. Дело в том, что вызов внешней программы из скрипта - потенциально опасное действие. Не проверив содержимое строки, передаваемой в качестве параметра таким функциям, как <b>eval()</b>, можно создать потенциальную брешь для злоумышленников. Посмотрите, что выведет на экран такая конструкция: <b>echo escapeshellcmd("echo y| format c:")</b>.
<li>Само собой, что в <b>PHP</b> есть функции работы с регулярными выражениями.
<li>В 4-ой версии появилась возможность работать с сессиями (в 3-ей для этих целей нужно писать эмулирующий сессии код). Сессиями мы займемся, когда будем разрабатывать систему регистраций в наших будущих проектах.
<li>Огромный список функций работы со строками (включая функцию для конвертации кириллицы в разные кодировки! - наверное, изобилием кодировок мы уже весь мир достали ;).
<li>Семь функций работы с <b>URL</b>: <b>base64</b>, разбор <b>URL</b>-строки на части (хост, порт, путь и т.д.), а также кодировка строки с заменой неанглийских символов и пробелов 16-ричными цифрами с лидирующим "%" и обратно (очень помогает при работе с файлами, имеющими русские буквы в названии).
<li>Функции проверки <b>PHP</b>-переменных на инициализированность (ух какое словечко получилось! ;), принадлежность определенному типу (число, строка и пр.) и т.п.
<li><b>XML</b>-функции (парсинг <b>XML</b>-тегов). В прошлом шаге я давал ссылку на сайт, где эта тема очень хорошо освещена.
</ol>
Фух. На этом беглый обзор закончим. В следующих шагах займемся более детальным рассмотрением функциональных групп на конкретных примерах.
<hr>
<center><font size=2><a href=php7.html>Предыдущий Шаг</a> | <a href=php9.shtml>Следующий Шаг</a></font></center>
<hr><center><font size=2>By <a href="mailto:kgp@nm.ru?SUBJECT=FromPHPByStep">Konstantin Platonov</a>.</center>
</body>
</html>