PHP это скриптовый server-side язык программирования, предназначенный в основном для включения в html страницу и выполняемый сервером перед выдачей страницы браузеру. PHP очень похож на ASP (существует даже конвертор asp2php), но приспособлен к unix-like системам и чаще всего употребляется с web-сервером apache, хотя может работать и с MS IIS и в принципе с любым другим веб-сервером. Кроме того, PHP3 является объектно-ориентированным. На мой взгляд, основное преимущество PHP - простота, гибкость и скорость выполнения. Мне, например, понадобилось минут 15 для просмотра мануалов и примеров, для того, чтобы перевести весь контент моего сайта на SQL (подробнее в слеудющих ШАГ-ах) и написать php-скрипт для выдачи его в html коде с шаблонным дизайном. Зачем так сложно? А вовсе и не сложно. Теперь, чтобы выложить на сайт новую статью или просто новость, я всего лишь добавляю новую запись на sql сервере с помощью MS Access или web-интерфейса sql, написанного кстати тоже на php, а при запросе страницы пользователем соответствующий php-скрипт выуживает из sql то, что ему надо и выдает уже красиво оформленную, готовую страницу.
SQL. Вот это является еще одним преимуществом PHP, такое впечатление, что он (PHP) просто рожден существовать в связке apache+php+sql. Для свой работы я выбрал MySQL, который также существует и под linux и под win9x/NT.
В качестве иллюстрации простоты php, предлагаю пример, передающий список файлов в текущем каталоге.
<HTML><BODY>
Список файлов:
<?
$dir = opendir(".");
while($file = readdir($dir))
echo "$file<BR>";
closedir($dir);
?>
</BODY></HTML>
Код, помещенный в теги <? и ?> не передается браузеру, а выполняется непосредственно на стороне сервера. А выдается то, что выводит команда echo. Я думаю, что человек, мало-мальски знающий хотя бы один язык программирования, поймет этот пример без проблем. Кажется, PHP похож на C? или Perl? или Basic? А вот к стати тот же пример в ООП варианте:
<?
$dir = dir(".");
while($file = $dir->read())
echo "$file<BR>";
$dir->close();
?>
И ведь вы можете это писать в своем любимом html редакторе! Лично я настолько полюбил этот язык, что пишу в нем и скрипты для linux shell (хотя это уже из области XXX и даже под dos/win. А запустить скрипт из шела проще некуда: php3 -q <filename> получается отличный интерпретатор.
А вот, для наглядности, еще пример для работы с MySQL:
<?
$conn=mysql_connect("127.0.0.1");
if (mysql_select_db("db",$conn)) {
$res=mysql_query("select * from tabl", $conn);
while(($data=mysql_fetch_row($res)))
echo("$data[0] $data[1] ");
} else
echo "Error! ";
?>
Этот скрипт выводит таблицу tabl из базы данных db на локальном MySQL сервере.