<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sib">
	<id>https://sibwiki.org/index.php?action=history&amp;feed=atom&amp;title=PHP</id>
	<title>PHP - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://sibwiki.org/index.php?action=history&amp;feed=atom&amp;title=PHP"/>
	<link rel="alternate" type="text/html" href="https://sibwiki.org/index.php?title=PHP&amp;action=history"/>
	<updated>2026-05-31T08:42:47Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://sibwiki.org/index.php?title=PHP&amp;diff=85914&amp;oldid=prev</id>
		<title>Yaroslav: Bot: Automated import of articles</title>
		<link rel="alternate" type="text/html" href="https://sibwiki.org/index.php?title=PHP&amp;diff=85914&amp;oldid=prev"/>
		<updated>2026-05-30T21:54:39Z</updated>

		<summary type="html">&lt;p&gt;Bot: Automated import of articles&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Нова сторонка&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{YouTube|PAB7EJag6gQ|width=300|height=250}}&lt;br /&gt;
&lt;br /&gt;
PHP — это распространенный мультипарадигменный скриптовый язык программирования с открытым исходным кодом, предназначенный преимущественно для веб-разработки и создания динамических веб-приложений. Название языка является рекурсивным акронимом от «PHP: Hypertext Preprocessor» (препроцессор гипертекста), однако первоначально оно расшифровывалось как «Personal Home Page tools» (инструменты для личной домашней страницы). Язык жестко специализирован для работы в среде веб-серверов и является одним из признанных индустриальных стандартов при разработке сайтов.&lt;br /&gt;
&lt;br /&gt;
== История создания и эволюция версий ==&lt;br /&gt;
Разработка языка была начата в 1993 году датским программистом Расмусом Лердорфом. Первоначально проект представлял собой простой набор скриптов, созданных Лердорфом для автоматизации и управления собственной персональной веб-страницей (отсюда историческое название Personal Home Page). В 1995 году состоялся первый публичный релиз языка. В этот период язык использовался для простейших задач веб-программирования и обработки HTML-страниц.&lt;br /&gt;
&lt;br /&gt;
В 1997 году к разработке присоединились два израильских программиста из Тель-Авива — Энди Гутманс и Зив Сураски. Они полностью переписали ядро интерпретатора, что привело к выпуску PHP 3 в июне 1998 года. Именно с этой версии язык приобрел свою современную форму, стал поддерживать модульность и перешел в свободную разработку сообществом, что вызвало стремительный рост его популярности.&lt;br /&gt;
&lt;br /&gt;
Дальнейшая эволюция языка проходила через несколько ключевых версий:&lt;br /&gt;
* Версия 4 (май 2000 года) — существенное улучшение производительности и внедрение буферизации вывода.&lt;br /&gt;
* Версия 5 (2004 год) — обновление ядра, повышение эффективности интерпретатора и полноценное внедрение объектно-ориентированного программирования с ориентацией на парадигмы языка Java.&lt;br /&gt;
* Версия 6 — находилась в разработке с 2006 года, однако в итоге была признана тупиковой ветвью и закрыта.&lt;br /&gt;
* Версия 7 (2014—2015 годы, включая популярную версию 7.4 в 2019 году) — масштабное обновление безопасности и производительности. Добавлен интерфейс внешних функций (FFI).&lt;br /&gt;
* Версия 8 (2020 год) — современный стандарт языка, продолжающий курс на повышение безопасности и строгой типизации. &lt;br /&gt;
&lt;br /&gt;
Несмотря на активное развитие версии 8, в индустрии сохраняется ситуация, при которой значительная часть проектов (до 50% по оценкам 2024 года) продолжает работать на устаревшей ветке PHP 7, что несет в себе риски для безопасности.&lt;br /&gt;
&lt;br /&gt;
== Архитектура и вычислительная среда ==&lt;br /&gt;
Скрипты на PHP являются кроссплатформенными. Жизненный цикл выполнения кода интерпретатором строго регламентирован и состоит из следующих этапов: лексический анализ исходного кода, генерация токенов, синтаксический анализ, генерация промежуточного байт-кода (OP-кода), оптимизация и, наконец, непосредственное выполнение OP-кода с учетом особенностей целевой аппаратной платформы.&lt;br /&gt;
&lt;br /&gt;
Управление оперативной памятью в языке осуществляется автоматически. Встроенный сборщик мусора самостоятельно освобождает и возвращает в систему все выделенные ресурсы сразу после завершения работы скрипта.&lt;br /&gt;
&lt;br /&gt;
Настройка поведения транслятора осуществляется через глобальный конфигурационный файл (php.ini). Внесение изменений в данный файл позволяет управлять ограничениями на выделяемую оперативную память, временем выполнения скриптов, ведением журналов ошибок и даже активировать скрытые функции (так называемые «пасхалки», выводящие специальные изображения по системным GET-запросам).&lt;br /&gt;
&lt;br /&gt;
Ввиду высокой популярности языка крупными технологическими компаниями были разработаны альтернативные компиляторы для повышения производительности. К наиболее известным примерам относятся транслятор HipHop от корпорации Facebook (генерирующий код на языке C++) и KPHP, разработанный специалистами социальной сети ВКонтакте.&lt;br /&gt;
&lt;br /&gt;
== Синтаксис и парадигмы программирования ==&lt;br /&gt;
Синтаксис PHP сформировался под сильным влиянием языка C, что существенно упрощает его освоение для специалистов с классическим техническим образованием. Кроме того, в языке отчетливо прослеживается влияние языка Perl (в частности, в конструкциях обхода массивов foreach).&lt;br /&gt;
&lt;br /&gt;
Язык был спроектирован так, чтобы его код можно было напрямую встраивать в гипертекстовую разметку HTML. Интерпретатор начинает обрабатывать программный код только внутри специальных ограничительных тегов. Все, что находится за пределами этих тегов, выводится веб-сервером без изменений. &lt;br /&gt;
&lt;br /&gt;
Концептуальный пример интеграции и базового синтаксиса:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;html&amp;gt;&lt;br /&gt;
 &amp;lt;body&amp;gt;&lt;br /&gt;
     &amp;lt;?php&lt;br /&gt;
         // Вывод строки&lt;br /&gt;
         echo &amp;quot;Привет, мир!&amp;quot;;&lt;br /&gt;
     ?&amp;gt;&lt;br /&gt;
 &amp;lt;/body&amp;gt;&lt;br /&gt;
 &amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Для еще более лаконичного вывода данных в язык встроена сокращенная конструкция с использованием знака равенства (например, &amp;lt;pre&amp;gt;&amp;lt;?= &amp;quot;Привет, мир!&amp;quot; ?&amp;gt;&amp;lt;/pre&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
Инструкции в языке разделяются точкой с запятой. Комментарии поддерживаются в трех стилях: в стиле C, C++ и в стиле операционных систем Unix. Имена переменных чувствительны к регистру, однако имена классов, методов классов и функций к регистру нечувствительны.&lt;br /&gt;
&lt;br /&gt;
== Типы данных и переменные ==&lt;br /&gt;
PHP является языком с динамической типизацией: тип переменной определяется автоматически в зависимости от контекста ее использования. При необходимости разработчик может принудительно включить строгий режим типизации, блокирующий неявные преобразования.&lt;br /&gt;
&lt;br /&gt;
Все переменные в языке начинаются с обязательного символа доллара ($). Объявлять переменные заранее не требуется.&lt;br /&gt;
Типы данных в PHP делятся на следующие категории:&lt;br /&gt;
* Скалярные типы: целые числа (integer), числа с плавающей запятой (float), логический тип (boolean) и строки (string).&lt;br /&gt;
* Нескалярные типы: массивы (array), объекты (object).&lt;br /&gt;
* Специальные типы: ресурсы (resource) и неопределенное значение (null).&lt;br /&gt;
&lt;br /&gt;
Массивы в PHP фактически представляют собой упорядоченные хеш-таблицы (словари), так как в качестве индексов могут выступать не только числа, но и строковые ключи. Ресурсы — это специальные ссылки на внешние по отношению к скрипту сущности, такие как открытые файлы, соединения с базами данных или потоки генерации изображений. Существует тенденция к отказу от ресурсно-ориентированного подхода в пользу чисто объектного представления внешних соединений.&lt;br /&gt;
&lt;br /&gt;
В языке присутствуют так называемые псевдотипы (например, mixed, void, self, parent). Псевдотип не является самостоятельным типом данных для хранения значений, а выступает как инструкция проверки типа, указывающая компилятору на допустимость целой группы различных типов.&lt;br /&gt;
&lt;br /&gt;
Важнейшей архитектурной особенностью PHP является наличие суперглобальных массивов. Это встроенные массивы, которые автоматически доступны в любой области видимости программы без использования специальных директив. К ним относятся:&lt;br /&gt;
* $GLOBALS — массив всех глобальных переменных программы.&lt;br /&gt;
* $_SERVER — параметры и переменные, передаваемые сервером и операционной системой.&lt;br /&gt;
* $_GET и $_POST — массивы параметров, извлеченных из URL-запросов и HTML-форм.&lt;br /&gt;
* $_FILES и $_COOKIE — массивы для работы с загружаемыми файлами и пользовательскими сессиями.&lt;br /&gt;
&lt;br /&gt;
== Объектно-ориентированное программирование ==&lt;br /&gt;
Поддержка ООП в ранних версиях была слабой, однако начиная с пятой версии язык обладает полноценной объектной моделью. Поддерживаются все ключевые механизмы: инкапсуляция (модификаторы доступа public, protected, private), полиморфизм, финальные и абстрактные методы. Язык не поддерживает классическое множественное наследование классов, но позволяет реализовывать несколько интерфейсов одновременно.&lt;br /&gt;
&lt;br /&gt;
Отдельной категорией в объектной модели PHP выступают «магические методы». Имена таких методов строго начинаются с двух символов подчеркивания. К ним относятся конструкторы (__construct), деструкторы (__destruct), методы перехвата обращений к свойствам (__get) и методы клонирования объектов (__clone). Программист может переопределять магические методы для тонкой настройки поведения объекта в нестандартных ситуациях.&lt;br /&gt;
&lt;br /&gt;
Концептуальный пример объявления класса:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 class Animal {&lt;br /&gt;
     private $name;&lt;br /&gt;
&lt;br /&gt;
     public function __construct($animalName) {&lt;br /&gt;
         $this-&amp;gt;name = $animalName;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     public function getName() {&lt;br /&gt;
         return $this-&amp;gt;name;&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 $dog = new Animal(&amp;quot;Собака&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Доступ к свойствам и методам объекта осуществляется с помощью специального оператора-стрелки (-&amp;gt;). Понятия указателя в классическом виде (как в C или C++) в PHP не существует, хотя объекты передаются в функции по ссылке.&lt;br /&gt;
&lt;br /&gt;
== Применение и экосистема ==&lt;br /&gt;
Основное назначение языка — серверная веб-разработка. PHP автоматически извлекает параметры запросов, взаимодействует с формами, HTTP-заголовками, сессиями пользователей и любыми типами баз данных (включая MySQL и Oracle). Язык лежит в основе популярнейших систем управления контентом (CMS) для быстрой разработки сайтов, таких как WordPress, Joomla и Drupal.&lt;br /&gt;
&lt;br /&gt;
Несмотря на узкую серверную специализацию, существует множество расширений для разработки полноценных настольных приложений с графическим интерфейсом. В конце 1990-х и нулевых годах активно развивалась интеграция PHP и среды Delphi (проект Delphi PHP). Были созданы системы быстрой визуальной разработки (RAD) — DevelStudio (впоследствии DevelNext), Dev-PHP. Язык интегрирован с мощными графическими библиотеками через обертки PHP-Qt и WinForms PHP.&lt;br /&gt;
&lt;br /&gt;
Стандартизация и упорядочивание экосистемы контролируется профессиональным сообществом через внедрение стандартных рекомендаций (PSR). Они обеспечивают единый стиль кодирования и совместимость библиотек от различных разработчиков.&lt;br /&gt;
&lt;br /&gt;
== Преимущества и критика ==&lt;br /&gt;
К главным преимуществам языка относится его феноменальное распространение в индустрии: язык является основой подавляющего большинства современных сайтов, что обеспечивает стабильный спрос на программистов. Скриптовая природа делает язык простым для изучения и не требующим глубокого знания сложных академических парадигм (например, строгого функционального программирования). Язык постоянно развивается, обладает огромной библиотекой модулей и мощной экосистемой сред разработки (Zend Studio, PHP Designer).&lt;br /&gt;
&lt;br /&gt;
Основная критика языка направлена на проблемы с вычислительной производительностью, отсутствие встроенной поддержки многопоточности и отсутствие поддержки многобайтовых кодировок непосредственно в ядре языка. Однако в большинстве коммерческих проектов эти недостатки нивелируются подключением специализированных C-расширений и использованием кэширующих акселераторов.&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
[[Perl]]&lt;br /&gt;
[[Python]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Языки программирования]]&lt;br /&gt;
[[Category:Скриптовые языки]]&lt;br /&gt;
[[Category:Динамические языки программирования]]&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=PAB7EJag6gQ Смотреть видео]&lt;/div&gt;</summary>
		<author><name>Yaroslav</name></author>
	</entry>
</feed>