История PHP

PHP/FI

Расмус Лердорф

В 1994 году датский программист (ныне живущий в Канаде) Расмус Лердорф (Rasmus Lerdorf) создал набор CGI-скриптов на языке программирования C[1] для вывода и учёта посетителей его онлайн-резюме, обрабатывающий шаблоны HTML-документов. Лердорф назвал набор Personal Home Page (Личная домашняя страница), но более часто упоминалось название "PHP Tools". Вскоре функциональности перестало хватать, и Расмус переписал PHP Tools, создав более крупную и богатую реализацию.

В июне 1995 года Расмус открыл исходный код PHP Tools общественности[2], что позволило разработчикам использовать его по своему усмотрению. Это также дало возможность пользователям исправлять ошибки в коде и улучшать его.

В 1997 году после длительного бета-тестирования вышла вторая версия обработчика, написанного на C — PHP/FI 2.0. Её использовали около 1 % (приблизительно 50 тысяч) всех интернет-доменов мира.[3]

PHP 3

Энди Гутманс

Версия PHP 3.0 подверглась значительной переработке, определившей современный облик и стиль языка программирования. В 1997 году два израильских программиста, Энди Гутманс (Andi Gutmans) и Зеев Сураски (Zeev Suraski), разработчики из израильского технологического института, расположенного в израильском городе Хайфе, полностью переписали код интерпретатора. PHP/FI 2.0 был сочтён ими непригодным для разработки приложения электронной коммерции, над которым они в то время работали. Для совместной работы над PHP 3.0 с помощью базы разработчиков PHP/FI 2.0 Энди, Расмус и Зеев решили объединиться и объявить PHP 3.0 официальным преемником PHP/FI, разработка же PHP/FI была практически полностью прекращена. После 9 месяцев публичного тестирования PHP 3.0 был официально выпущен в июне 1998 года.[3]

Одной из сильнейших сторон PHP 3.0 была возможность расширения ядра дополнительными модулями. Впоследствии интерфейс написания расширений привлёк к PHP множество сторонних разработчиков, работающих над своими модулями, что дало PHP возможность работать с огромным количеством баз данных, протоколов, поддерживать большое число API. Большое количество разработчиков привело к быстрому развитию языка и стремительному росту его популярности.

Абсолютно новый язык программирования получил новое имя. Разработчики отказались от дополнения о персональном использовании, которое имелось в аббревиатуре PHP/FI и язык был переименован в PHP.

К концу 1998 года PHP использовался десятками тысяч пользователей. Сотни тысяч веб-сайтов сообщали об использовании языка программирования PHP. В то время PHP 3.0 был установлен приблизительно на 10 % веб-серверов Интернета.

PHP 4

К зиме 1998 года, практически сразу после официального выхода PHP 3.0, Энди Гутманс и Зив Сураски начали переработку ядра PHP. В задачи входило увеличение производительности сложных приложений и улучшение модульности базиса кода PHP. Расширения дали PHP 3.0 возможность успешно работать с набором баз данных и поддерживать большое количество различных API и протоколов, но PHP 3.0 не имел качественной поддержки модулей и приложения работали неэффективно.

Новый движок, названный Zend Engine (от имён создателей, Зива и Энди, также основателей Zend Technologies), успешно справлялся с поставленными задачами и впервые был представлен в середине 1999 года. PHP 4.0, основанный на этом движке и принёсший с собой набор дополнительных функций, официально вышел в мае 2000 года, почти через два года после выхода своего предшественника PHP 3.0. В дополнение к улучшению производительности, PHP 4.0 имел ещё несколько ключевых нововведений, таких как поддержка сессий, буферизация вывода, более безопасные способы обработки вводимой пользователем информации и несколько новых языковых конструкций.

Прекращение выпуска обновлений PHP 4 было запланировано на конец 2007 года[4]. Однако вплоть до 8 августа 2008 года выпускались критические обновления безопасности. С 9 августа 2008 года всякая поддержка версии PHP 4.x была прекращена.

PHP 5

Пятая версия PHP была выпущена разработчиками 13 июля 2004 года. Изменения включают обновление ядра Zend (Zend Engine 2), что существенно увеличило эффективность интерпретатора. Введена поддержка языка разметки XML. Полностью переработаны функции ООП, которые стали во многом схожи с моделью, используемой в Java. В частности, введён деструктор, открытые, закрытые и защищённые члены и методы, окончательные члены и методы, интерфейсы и клонирование объектов. Нововведения, однако, были сделаны с расчётом сохранить наибольшую совместимость с кодом на предыдущих версиях языка. На данный момент последней стабильной веткой является PHP 5.6, которая содержит ряд изменений и дополнений:

  • Увеличена скорость работы, примерно на 10-20 %
  • Введено пространство имён
  • Позднее статическое связывание и специальный метод __callStatic()
  • Лямбда-функции и замыкания
  • Добавление расширений: intl, phar, fileinfo и sqlite3
  • Опциональный сборщик мусора
  • Был написан драйвер MySQLnd для самой популярной у PHP разработчиков базы данных MySQL. С появлением нативного драйвера скорость работы с Mysql значительно увеличилась, также новый драйвер доступен уже в стандартной сборке(ранее это было невозможно из-за лицензии, связанной с libmysql)
  • Прекращение поддержки версий операционной системы до Windows 2000 (Windows 98, NT4, и.т.д.)
  • Новые синтаксические конструкции, такие как NOWDOC, ограниченный GOTO, короткий вид тернарного оператора «?:»

и другое.

PHP 6

Шестая версия PHP находилась в стадии[5] разработки с октября 2006 года. В ней уже было сделано[6][7] множество нововведений, как, например, исключение из ядра регулярных выражений POSIX и «длинных» суперглобальных массивов, удаление директив safe_mode, magic_quotes_gpc и register_globals из конфигурационного файла php.ini. Основные усилия были сосредоточены на поддержке Юникода.[8]. Однако в марте 2010 года разработка PHP6 была признана бесперспективной[9] из-за сложностей с поддержкой Юникода. Исходный код PHP6 перемещён на ветвь, а основной линией разработки стала версия 5.4.


PHP 7

В 2014 году было проведено голосование, по результатам которого следующая версия получила название PHP 7. Выход новой версии планировался в середине октября 2015 года. В марте 2015 года Zend представили инфографику, в которой описаны основные нововведения PHP 7[источник не указан 780 дней].

3 декабря 2015 года было объявлено о выходе PHP версии 7.0.0[источник не указан 780 дней].

Новая версия основывается на экспериментальной ветви PHP, которая изначально называлась phpng (PHP Next Generation — следующее поколение) и разрабатывалась с упором на увеличение производительности и уменьшение потребления памяти. В новой версии добавлена возможность указывать тип возвращаемых из функции данных, добавлен контроль передаваемых типов для данных, а также новые операторы[источник не указан 780 дней].

PHP 8

PHP 8.0.0 был выпущен 26 ноября 2020 года.

Предыстория версии PHP 8 началась в 2015 году, когда был выпущен PHP 7.0. Это было крупное обновление, которое принесло множество улучшений и новых возможностей, в том числе значительное увеличение производительности и внедрение строгой типизации.

В 2016 году были выпущены две небольшие версии - PHP 7.1 и PHP 7.2, которые добавили новые возможности, такие как Nullable типы и функции согласования типов.

В 2018 году была выпущена PHP 7.3, которая принесла ряд новых функций, таких как поддержка групповых захватов в регулярных выражениях и функции `array_key_first()` и `array_key_last()`.

В 2019 году была выпущена PHP 7.4, которая добавила новые функции, такие как Typed Properties 2.0, Arrow Functions 2.0 и Weak References.

В 2020 году была выпущена PHP 8.0, которая является крупным обновлением и включает множество новых функций и улучшений, таких как JIT-компиляция, Union Types, Named Arguments, Attributes и другие.

В 2023 году была выпущена PHP 8.2, которая представила новые функции, такие как readonly свойства, поддержка распаковки массивов со строковыми ключами, тип never, а также улучшения производительности и управления памятью.

Таким образом, PHP 8.3 - это последняя версия PHP на данный момент.

Примечания

  1. Rasmus Lerdorf. I wonder why people keep writing that PHP was ever written in Perl. It never was. #php (англ.). @rasmus (20 июля 2012). Дата обращения: 28 ноября 2020. Архивировано 3 января 2018 года.
  2. Rasmus Lerdorf. Announce: Personal Home Page Tools (PHP Tools) (англ.) (8 июля 1995). Дата обращения: 28 ноября 2020. Архивировано 3 сентября 2006 года.
  3. 1 2 PHP: History of PHP — Manual (англ.). Дата обращения: 28 ноября 2020. Архивировано 1 февраля 2009 года.
  4. Прекращение выпуска версий PHP 4.x Архивная копия от 1 июля 2009 на Wayback Machine (англ.)
  5. Количество переписанных функций с поддержкой Юникода. Дата обращения: 7 декабря 2009. Архивировано 19 января 2007 года.
  6. Файл news.txt из дистрибутива PHP 6 Архивная копия от 12 декабря 2008 на Wayback Machine
  7. Текущий список выполненных и невыполненных работ по PHP 6. Дата обращения: 7 декабря 2009. Архивировано 18 апреля 2008 года.
  8. Полный список изменений, которые были запланированы в декабре 2005 года. Дата обращения: 7 декабря 2009. Архивировано 12 августа 2006 года.
  9. Как умер PHP6. Дата обращения: 3 декабря 2011. Архивировано 13 октября 2011 года.

Read other articles:

This list is incomplete; you can help by adding missing items. (June 2022) This is a list of ships and classes of the Soviet Navy. Corvettes In the Soviet Navy these were classified as small anti-submarine ships (MPK) or small missile ships (MRK). Kronshtadt class (projects 122A, 122bis) Poti class (project 204) Grisha class (project 1124 Al'batros) Grisha I class (project 1124.1), 37 ships built in 1966–1982 Grisha II class (project 1124P, P stands for pogranichnyi – on the border), 20 ...

 

Иван IV отправляет Осипа Непею в Англию. Миниатюра Никоновской летописи. XVI век Никоновская летопись — крупнейший памятник русского летописания XVI века. Названа по имени патриарха Никона, которому принадлежал один из её списков. Изучение стилистических особеннос...

 

Belgian one-day road cycling race Le SamynRace detailsDateFebruary/MarchRegionHainaut, BelgiumLocal name(s)Le Samyn des Hommes (men)Le Samyn des Dames (women)(in French)Nickname(s)Le SamynDisciplineRoadCompetitionMen: UCI Europe TourWomen: Lotto Cycling CupTypeSingle-dayWeb sitewww.lesamyn.be Men's historyFirst edition1968 (1968)Editions56 (as of 2024)First winner José Samyn (FRA)Most wins Johan Capiot (BEL) (3 wins)Most recent Laur...

Sulla morteTitolo originaleΠερὶ θανάτουPerì thanátou Ricostruzione della Villa dei Papiri, sede di Filodemo AutoreFilodemo di Gadara 1ª ed. originale Generetrattato Sottogenerefilosofia Lingua originalegreco antico Modifica dati su Wikidata · Manuale Sulla morte (noto anche come De morte) è un trattato in quattro libri di Filodemo di Gadara. Indice 1 Contesto 2 Contenuto 3 Note 4 Bibliografia 5 Voci correlate Contesto Il De Morte di Filodemo è chiaramente indirizzato (a...

 

Tadibast IIIIbunda Dewa, Istri RajaAegis kecil dengan nama Tadibast dan putranya Osorkon, di Museum LouvrePasangandiduga Shoshenq VAnakOsorkon IVnama Mesir ḥmt-nswt Tȝ-di-BȝsttIstri Raja Tadibast(et)Agamaagama Mesir Kuno Tadibast (atau Tadibastet) III merupakan seorang permaisuri Mesir Kuno selama akhir Periode Menengah Ketiga Mesir, pada sekitar paruh kedua abad ke-8 SM. Identifikasi Ia dikenal hanya oleh elektrum Aigis dari Sekhmet, Bubastis dan sekarang dipajang di Museum Louvre. Pada ...

 

Czech Roman Catholic prelate and theologian Servant of GodJosef HlouchBishop of České BudějoviceHlouch on 22 September 1969.ChurchRoman Catholic ChurchDioceseČeské BudějoviceSeeČeské BudějoviceAppointed25 June 1947Installed7 September 1947Term ended10 June 1972PredecessorŠimon BártaSuccessorMiloslav VlkOrdersOrdination5 July 1926by Leopold PrečanConsecration15 August 1947by Saverio RitterPersonal detailsBornJosef Hlouch(1902-03-26)26 March 1902Lipník, Austria-HungaryDie...

Les Grandes Plaines (en anglais : « Prairie », Great Plains ou Grassland[1]) sont une région de l'Amérique du Nord, la partie médiane du continent au centre-ouest des États-Unis et du Canada, à l'est des montagnes Rocheuses. La région est semi-aride, constituée de vastes plaines qui s'étendent des provinces canadiennes de la Saskatchewan et de l'Alberta au nord, jusqu'au Texas au sud. Aux États-Unis, la plupart des Grandes Plaines du Nord sont drainées par le Missou...

 

Pour les articles homonymes, voir Portman. Eric PortmanEric Portman dans L'Étrange Rendez-vous (1948).BiographieNaissance 13 juillet 1901HalifaxDécès 7 décembre 1969 (à 68 ans)CornouaillesNom de naissance Eric Harold PortmanNationalité britanniqueActivités ActeurPériode d'activité 1933-1969modifier - modifier le code - modifier Wikidata Eric Portman est un acteur anglais, né le 13 juillet 1901[a] à Halifax (Royaume-Uni) et mort le 7 décembre 1969 d'une crise cardiaque à St ...

 

Hamburgbukta (English: Hamburg Bay) is a one-kilometer-long bay on the western side of Hoelhalvøya, Albert I Land, Spitsbergen in the Svalbard archipelago. Hamburgbukta lies just below Magdalenafjorden (j), on the peninsula, Hoelhalvøya, that forms its southern shore. History The French were the first to occupy it in 1633, calling it Port Louis or Refuge Français. On the southern shore of the bay they built a whaling station. In 1634 two English men-of-war tried to drive out the French, bu...

Ongoing COVID-19 viral pandemic in Pakistan COVID-19 pandemic in PakistanDiseaseCOVID-19Virus strainSARS-CoV-2LocationPakistanFirst outbreakWuhan, Hubei, ChinaIndex caseKarachi and Islamabad (cases reported on same day)Arrival date26 February 2020(4 years, 3 months and 3 weeks)Confirmed cases1,580,631[1]Recovered1,245,155[2]Deaths30,656[1]Fatality rate1.94%Vaccinations165,567,890[1] (total vaccinated)140,475,871[1] (fully vaccinated)340,9...

 

Islam menurut negara Afrika Aljazair Angola Benin Botswana Burkina Faso Burundi Kamerun Tanjung Verde Republik Afrika Tengah Chad Komoro Republik Demokratik Kongo Republik Kongo Djibouti Mesir Guinea Khatulistiwa Eritrea Eswatini Etiopia Gabon Gambia Ghana Guinea Guinea-Bissau Pantai Gading Kenya Lesotho Liberia Libya Madagaskar Malawi Mali Mauritania Mauritius Maroko Mozambik Namibia Niger Nigeria Rwanda Sao Tome dan Principe Senegal Seychelles Sierra Leone Somalia Somaliland Afrika Selatan ...

 

Cet article est une ébauche concernant Besançon et les monuments historiques français. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Maison ex Synagogue de CharmontMaison ex Synagogue de CharmontPrésentationType MaisonPatrimonialité Inscrit MH (1937)LocalisationDépartement DoubsCommune BesançonCoordonnées 47° 14′ 27″ N, 6° 01′ 07″ ELocalisation sur la carte ...

本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目需要补充更多来源。 (2015年6月5日)请协助補充多方面可靠来源以改善这篇条目,无法查证的内容可能會因為异议提出而被移除。致使用者:请搜索一下条目的标题(来源搜索:凯尔盖朗群岛 — 网页、新闻、书籍、学术、图像),以检查网络上是否存在该主题的更多可靠来源(判定指引)。 此...

 

This article is about the port in Libya. For the port in Lebanon, see Port of Tripoli (Lebanon). The port of Tripoli in the 1930s The Port of Tripoli is the principal seaport in Tripoli, the capital of Libya, and one of the oldest ports in the Mediterranean. The port serves general cargo, bulk cargo & passengers. History In 1911, Italy claimed the need to protect its citizens who lived in the Port of Tripoli. It declared war against the Ottomans, saying it would annex the city. A naval ba...

 

South Korean music chart This article is about the South Korean music chart. For the circular statistical graphic, see Pie chart. Circle ChartType of siteRecord chartAvailable inKoreanPredecessor(s)Gaon Chart (2010–2022)OwnerKorea Music Content AssociationURLcirclechart.krCommercialYesRegistrationOptionalLaunchedFebruary 23, 2010; 14 years ago (2010-02-23)Current statusActive The Circle Chart (Korean: 써클차트; RR: Sseokeul-chateu), prev...

Battle on the Western Front during the First World War Battle of Thiepval RidgePart of The Battle of the Somme of the First World WarDate26–28 September 1916LocationThiepval, France and vicinity50°3′16.3″N 2°41′18.2″E / 50.054528°N 2.688389°E / 50.054528; 2.688389Result British victoryBelligerents  British Empire  Canada  United Kingdom  France  German EmpireCommanders and leaders Douglas Haig Hubert GoughJoseph JoffreFerdinand F...

 

This article is about the album. For the Take That song, see Progress (Take That album). 2018 studio album by Why Don't We8 LettersStudio album by Why Don't WeReleasedAugust 31, 2018 (2018-08-31)Recorded2016–2018GenrePopLength26:15LabelSignature Entertainment AtlanticWarnerProducerThe Monsters and the StrangerzLouis SchoorlMick SchultzJonas JebergCutfatherJacob MansonSteve MacBorgeousR3habWhy Don't We chronology A Why Don't We Christmas(2017) 8 Letters(2018) Spotify S...

 

У этого термина существуют и другие значения, см. Пластичность. Механика сплошных средСплошная среда Классическая механика Закон сохранения массы · Закон сохранения импульса Теория упругости Напряжение · Тензор · Твёрдые тела · Упругость · Пластичность · Закон Гука · Р...

Eric SturgessNazionalità Sudafrica Tennis Carriera Singolare1 Vittorie/sconfitte 62–15 Titoli vinti Miglior ranking Risultati nei tornei del Grande Slam  Australian Open SF (1950)  Roland Garros F (1947, 1951)  Wimbledon SF (1949, 1951)  US Open F (1948) Doppio1 Vittorie/sconfitte 0–1 Titoli vinti Miglior ranking Risultati nei tornei del Grande Slam  Australian Open F (1950)  Roland Garros V (1947)  Wimbledon F (1951, 1952)  US Open - Doppio m...

 

Dialect of Arabic spoken in the State of Palestine This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages) This article includes a list of general references, but it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (December 2010) (Learn how and when to remove this message) This article should specify the language of its non-Englis...