По словам разработчика языка, данный язык программирования возник буквально за один день, создаваясь в свободное время между деловыми встречами. Поначалу была обычная невзрачная CGI-оболочка, написанная при помощи языка Perl. Такое приложение запускается удаленным сервером, обрабатывается в нем и передается пользователю CGI-программы на экран. Таким образом, посетитель получал динамическую информацию, которая имела возможность изменяться в зависимости от различных факторов. Сам шлюз мог быть написан на самых разных языках. Первоначально, для разработки шлюза, создатель РНР выбирал язык Perl, так как освоение его было наиболее простым и удобным.
Сегодня язык программирования РНР представляет собой мощный набор средств, располагающийся на сервере и предназначенный для обработки специального кода, который встраивается в HTML-страницу. Благодаря ему стало возможно легко и быстро заниматься созданием динамических сайтов. Ведь в процессе запрашивания посетителем документа с РНР-кодом, весь скрипт обрабатывает не его браузером, а задействуется специальный сервер, где хранятся и обрабатываются файлы. Пользователю предоставляется только результат работы, тем самым облегчая весь процесс взаимодействия.
Немаловажным плюсом РНР-кода, является то, что его можно внедрять в любую позицию HTML-страницы. Язык программирования РНР прост в изучении. Он не требует от вас какого-либо специфического образования. Как и иные языков программирования, РНР, обладает свои собственным синтаксисом. Он очень похож на язык С и Perl. Программисты, которые занимаются написанием программ на этих языках, освоят РНР всего за пару дней. Но, если вы далеки от программирование, не стоит расстраиваться, РНР поддастся вам легко. И тем самым подготовит хорошую базу для изучения языков более сложного уровня. Синтаксис состоит из операторов, разделенных между собой точкой с запятой, а все команды просты и понятны для понимания. К счастью, для облегчения работы программиста, ошибки в РНР выводятся на экран, поэтому найти ошибку не составит особого труда. А умный интерпретатор укажет номер строки, где произошла ошибка.