Главное меню
Друзья
PHP примеры
15.05.2006 г.
PHP пример #1 - свойства клиента и сервера.
Пример обращения к «супер-глобальным» массивам PHP, получение информации о клиенте и сервере.
<?php
#получаем ip-адрес посетителя который пытается помотреть страницу.
$ip=getenv('REMOTE_ADDR');
echo '<b>IP<b>: '.$ip.'<br>';
#узнаем каким браузером пытаются посмотреть страницу
$browser=getenv('HTTP_USER_AGENT');
echo '<b>BROWSER</b>: '.$browser.'<br>';
#узнаем как называется наш скрипт
$name=$_SERVER['PHP_SELF'];
echo '<b>Название скрипта<b>: '.$name.'<br>';
#Узнаем на каком сервере выполняется скрипт
$host=$_SERVER['SERVER_NAME'];
echo '<b>SERVER<b>: '.$host.'<br>';
#смотрим какие вообще доступны элементы супер-глобального массива $_SERVER
echo '<pre>';
print_r($_SERVER);
echo '</pre>';
?>
Наглядно видно, что в PHP максимально упрошено получение всевозможных данных как о пользователе, который пытается выполнить скрипт, так и о сервере на котором этот скрипт выполняется. Когда это может быть полезно:
таким данным можно писать скрипты, которые не будут жестко привязаны к определенному серверу. Достаточно лишь формировать html-ссылки используя данные из супер-глобальных массивов.
имея такой простой доступ можно, во-первых, собирать полню статистику о посетителях сайта либо разграничивать доступ к определенным частям сайта, используя данные из тех же массивов.
Как видно получать данные можно и не через сами супер-глобальные массивы, а через специальные функции. Это полезно при обработке ошибок при обращении к несуществующему элементу сами супер-глобального массива.
PHP пример #2 - работа с HTTP протоколом.
Пример использования функций PHP работы с протоколом HTTP.
<?php
#Перенаправит пользователя на http://php.net при условии, что ip клиента не равен 127.0.0.1
if($_SERVER['REMOTE_ADDR']!='127.0.0.1') header('loaction: http://php.net');
#в противном случае выведет текущий IP, т.е. 127.0.0.1
else echo '<b>IP</b>: '.$_SERVER['REMOTE_ADDR'].'<br>';
?>
Этот пример хорошо иллюстрирует работу с заголовками HTTP. Когда это может быть полезно:
в заголовках передаются очень важные данные. Простой пример - вы хотите генерировать средствами PHP изображения в формате GIF, тогда прежде чем выводить непосредственно изображение нужно изменить заголовок HTTP Content-type (по умолчанию он равен text/html) на «image/gif». Для изображений в формате JPEG, например, этот заголовок должен быть равен «image/jpeg».
использовать заголовки можно для перенаправления пользователя на другие страницы, сайты и прочие ресурсы.
Контроль над заголовками HTTP сильно расширяет возможности PHP. Благодаря такой возможности становится возможным создавать не только динамические страницы сайтов, но и динамические изображения, динамические архивы и т.д.
PHP пример #3 - почтовые функции.
Этот пример показывает насколько просто отослать e-mail сообщение средствами PHP.
<?php
mail(' Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script ', 'Тема сообщения', 'Привет! Как жЫcь в целом!');
?>
Да, да. Всего одна строчка. Одна функция. Краткость сестра таланта. Думаю, и так понятно, какие возможности дает отправка «мыла». Это и всевозможные уведомления кого угодно о чем угодно, это и продвинутая регистрация пользователей с подтверждением по e-mail. Так с ходу и не пересказать все открывающиеся возможности. Тут у кого, на что фантазии хватит. Кстати с помощью PHP можно не только отправлять письма, но и отправлять (не намного более сложным способом).
И напоследок.
Вот три примера, которые очень ярко иллюстрируют часть наиболее популярных возможностей PHP. За рамками данной статьи, конечно, осталось огромное количество возможностей. Приведу несколько наиболее «вкусных»:
Работа с базами данных через простые и понятные функции. Поддерживается огромный ассортимент БД. От бородатой Berkley DB до монстра Oracle и легковеса SQL Lite.
кодирование и декодирование данных.
генерацию изображений и архивов.
Работа с XML.
Скажу даже немножко больше. PHP полностью полноценный язык программирования, а не строго заточенный инструмент для web-разработки. И главное это простота изучения синтаксиса и функций. Разработчики постарались максимально упростить синтаксис для тех, кто переходит на PHP c других языков программирования. Тот факт, что прежде чем выдать синтаксическую ошибку интерпретатор PHP постарается ее исправить - а это говорит о многом.
Источник: _phpwars.net

