LINUX.ORG.RU

PHP исполнилось 20 лет

 


3

2

Именно в этот день, 8 июня 1995 года, Расмус Лердорф открыл исходный код PHP Tools общественности.

Созданное в 1994 году Расмусом Лердорфом, самое первое воплощение PHP было простым набором CGI-скриптов, написанных на языке программирования Си.

Первой версией PHP, напоминающей тот язык, каким мы знаем его сегодня, была версия 3.0. Примерно после девяти месяцев публичного тестирования, при объявлении официального выпуска PHP 3.0, он уже был установлен на более чем 70000 доменах по всему миру. На пике своего развития PHP 3.0 был установлен приблизительно на 10% веб-серверов в Интернете.

PHP 4.0, основанный на новом движке «Zend Engine», официально вышел в мае 2000 года. Кроме значительного улучшения производительности, PHP 4.0 получил ещё несколько ключевых нововведений, таких как поддержка намного большего числа веб-серверов, поддержка HTTP сессий, буферизация вывода, более безопасные способы обработки вводимой пользователем информации и несколько новых языковых конструкций.

В июле 2004 был выпущен PHP 5 с обновлённым движком «Zend Engine 2.0», новой объектной моделью и множеством других нововведений. Версия 5.3 порадовала пользователей пространствами имён, поздним статическим связыванием и замыканиями.

В 2009 году появилась группа совместимости фреймворков (PHP-FIG), которая начала благородную миссию по стандартизации совместимости PHP-проектов. Большинство PHP-библиотек и фреймворков начали адаптацию под рекомендации, предложенные или одобренные группой совместимости фреймворков (PSR).

В апреле 2011 началась работа над менеджером зависимостей Composer, который должен прийти на замену устаревшему PEAR.

Новая значительная версия PHP 5.4 была выпущена в марте 2012. С выпуском этой версии PHP получил заметные улучшения производительности, новые функции включают трейты, короткий синтаксис массивов, встроенный веб-сервер для тестирования и многое другое.

С приходом версии 5.5 в PHP появились генераторы и сопрограммы, ключевое слово finally, упрощенное API для хеширования паролей и множество других новых функций.

Несмотря на наличие обширной документации, первоначальный черновик спецификации был анонсирован только в 2014 году.

А в августе этого же года вышла стабильная значительная версия PHP 5.6. Новые функции включают скалярные выражения в константах, функции с переменным числом аргументов при помощи оператора ..., оператор возведения в степень **, импорт функций и констант при помощи ключевого слова use и многое другое.

Уже осенью этого года состоится выпуск PHP 7, который включит революционные для этого языка изменения.

>>> Подробности

★★★★★

Проверено: maxcom ()
Последнее исправление: cetjs2 (всего исправлений: 2)

Ответ на: комментарий от anonymous

У него вот точно такой же внешний вид, как и у любого скриптового языка.

Ну вот, что и требовалось доказать - пехепе - язык общего назначения

С тобой уже скучно становится: бредовый довод про внешний вид. Микросхемы тоже все выглядят одинаково. По твоей логике, стандартный общепринятый и общепонятный внешний вид должен означать что и предназначение у всех микросхем одинаковое

pihter ★★★★★
()
Ответ на: комментарий от anonymous

Всё развивалось под влиянием C++?

Молчун, таки, да. Сегодня каждый язык считает своим долгом уметь в ООП. Или на С++ не имеет отношения к истории развития ООП?

фонаты

Я у нас че, уже не только фОнат РНР, но и С++?

pihter ★★★★★
()
Ответ на: комментарий от anonymous

Назови хотя бы одну программу на C++ под его авторством?

Я и твоих не видел, так что все по честному. А вот книжку он написал, а ты — нет :)

pihter ★★★★★
()
Ответ на: комментарий от pihter

Динамически-генерируемую домашнюю страницу: там же между строк написано ДИНАМИЧЕСКУЮ

Во первых не прописано.
Во вторых JS тоже без проблем рендерить «Динамически-генерируемую домашнюю страницу»
В третьих уже лет 5 страницы принято рендерить на клиенте а на сервере держать статический HTML

grim ★★☆☆
()
Ответ на: комментарий от anonymous

в мире много не только языков программирования, а вообще, языков для общения, в т.ч. и государственных языков

Разумно. Но таки и среди человеческих языков есть особые. Не говоря уже про то, что бывают специализированные «языки» под конкретные задачи. Язык описания химических формул, например или математический «язык»

pihter ★★★★★
()
Ответ на: комментарий от zenden

вытащите меня из криокамеры и разбудите, когда в пхп появится многопоточность

С приходом версии 5.5 в PHP появились генераторы и сопрограммы

Так написано в ОП-посте. Считается за многопоточность с натяжкой?

pihter ★★★★★
()
Ответ на: комментарий от grim

Динамически-генерируемую домашнюю страницу: там же между строк написано ДИНАМИЧЕСКУЮ

Во первых не прописано.

_между строк_ — мы обсуждаем РНР, ежу должно быть понятно, что, говоря у написании домашней странички, я имел в виду динамическую домашнюю страничку. // в любом случае, мой крик о том что Я НЕ НАПИСАЛ МЕЖДУ СТРОК был шуткой

Во вторых JS тоже без проблем рендерить «Динамически-генерируемую домашнюю страницу»

В момент рождения РНР не то что про AJAX, про JS-то не все занли :) Я говорил именно о моменте времени, когда РНР только начинался

В третьих уже лет 5 страницы принято рендерить на клиенте а на сервере держать статический HTML

Ну, ну... не у все так принято: поисковики, например, такое еще не умеют, а поисковики — это вам non penis canina: оно важно для веба // ну и, эта... я тут почитал заголовок треда и подумал, что РНР немногим больше, чем 5 лет

pihter ★★★★★
()
Ответ на: комментарий от pihter

_между строк_ — мы обсуждаем РНР

Да хоть между ног напиши и уймись. С тобой всё уже понятно.

anonymous
()
Ответ на: комментарий от pihter

Почему, на твой взгляд, функциональное программирование менее популярно по сравнению с классическим (хотя что классичнее — вопрос) процедурным?

Потому что в IT большинство состоит из упоротых кроликов. :-)

anonymous
()
Ответ на: комментарий от pihter

Верю, но в то, что ты знаешь С++ лучше него — решительно нет: глупо в такое верить, а мне сегодня сказали, что я — не глупый

А я верю в то, что тебе сегодня соврали :-)

anonymous
()
Ответ на: комментарий от pihter

Ты сказал что ЛЮБОЙ язык должен быть выразительным — я доказал, что НЕ ЛЮБОЙ.

Слишком много капс-лока, крикливый лгун. Ну кто ты после этого? Было ведь сказано, иное, а именно, что язык программирования должен быть выразительным и кратким, чтобы можно было писать софт, а не заниматься онанизмом. Если ты в качестве доказательства приводишь брэйнфак, то ты просто слился за отсутствием вменяемых аргументов :-)

anonymous
()
Ответ на: комментарий от pihter

Разумно. Но таки и среди человеческих языков есть особые. Не говоря уже про то, что бывают специализированные «языки» под конкретные задачи. Язык описания химических формул, например или математический «язык»

Выкручиваешься как можешь, но фэйл за фэйлом. Ты слился, кроль, зачётно слился :-) Крикунам другого и не дано. :-)

anonymous
()
Ответ на: комментарий от pihter

Или на С++ не имеет отношения к истории развития ООП?

Неграмотность и невежество не даёт повода для чванства.

anonymous
()
Ответ на: комментарий от pihter

Я и твоих не видел, так что все по честному. А вот книжку он написал, а ты — нет :)

Если бы ты их и увидел, то всё равно бы ничего не понял. Во-первых, потому что ты не знаешь даже банальный цепепе. Во-вторых, даже если бы ты и знал, цепепе, то ты всё равно бы ничего не понял. (Догадайся сам почему.) :-) В-третьих, у меня есть дела намного более приятные, чем писать книгу про всякого рода уродства. :-)

anonymous
()
Ответ на: комментарий от anonymous

Этот тред слишком упоротый даже для ЛОРа.

Наличие столь упоротых и полуграмотных обитателей - это сигнал. Пора, видимо, завязывать, а то вдруг это заразно? :-)

anonymous
()
Ответ на: комментарий от zenden

Взять тот же Symfony 2

Зачем брать этого мамонта?

xdebug для отладки делает это уебище еще в два раза медленнее

В 10 раз.

В каждом месте кода ты сам думай какого типа эта переменная

Как и в любом языке с динамической нестрогой типизацией. Почему претензий только к PHP?

Так сделайте уже строгую типизацию

Уже сделали.

А еще аннотации в пхп-комментах это адов ...

Ну так не пользуйся. Я, вот, не пользуюсь ими. И у меня нервы намного спокойнее, чем у тебя :)

разбудите, когда в пхп появится многопоточность

А зачем? Итак хорошо получается. И голова не болит от утечек памяти как в альтернативах.

KRoN73 ★★★★★
()
Ответ на: комментарий от ShibaOn

Два года с момента написания статьи, где упоминается год 2009, а все страхи и претензии из начала 2000-х, когда деревья были большими, а трава зеленая.

На днях буквально деплоил проект на Symfony 2 на виртуальный хостинг — клиент на нём висит уже много лет, переезжать не собирается, что такое vds не знает и знать не хочет.

ssh там хоть и был, но от него было мало толку, поскольку по нему php из консоли без dbo запускался. Пришлось пилить исполнение симфониевских консольных команд из админки. АД.

Это проблема хостинга и менеджмента, не способного выбрать для клиента подходящий тарифный план и убедить в необходимости переезда, но никак не языка или фреймворка.

Fafhrd
()
Ответ на: комментарий от pihter

У меня на малой родине есть место, где все березы коряво-коряво растут и не понятно почему. Считается это за геопатогенную зону?

Измеряя емкость конденсатора в ней и вне ее — я смогу уловить отличия?

Патогены-мутагены разные бывают, если химия, то к конденсаторам это отношения не имеет. А вообще столб непонятного излучения можно и посреди дома отыскать. Если не жалко бабла на приборы, то читай книжку.

Как и что там будет влиять на емкость конденсатора?

А ты не знаешь как можно временно подкрутить плоскому кандёру ёмкости? Это же известный опыт. Как известно (если хотел знать то известно), электронные оболочки, это упругие облака вокруг ядер и имеют грубо говоря приближённую к шару форму. А когда два атома/молекулы вступают в ковалентную связь то 2 их электронных облака сливаются в одно. А теперь, внимание, геометрия: длина окружности двух кругов больше чем одной окружности получаемой при слиянии двух этих кругов. Можешь нарисовать схему-картинку и проверить. С шарами будет тоже что и с кругами, то есть при образовании ковалентной связи кусок электронной оболочки вдруг становится лишним, а у нас материя без чудес вдруг не исчезает, следовательно из лишнего куска электронов сгенерируется и вылетит не очень долгоживущая частица - лептончик, который может подзастрять в твёрдом материальном теле, в том числе и в плоском конденсаторе. Емнип реакция раствора кислоты со щёлочью даёт ковалентную связь. Ну вот, рядом с банкой химреактором положить кондёр а потом точно измерить ёмкость. Если ты нароешь природный поток похожих частиц, то будет тоже самое.

Napilnik ★★★★★
()
Ответ на: комментарий от pihter

Но в летающие камни я, таки, не соглашусь: было бы видно в телескоп, например. Или любительским радаром. Такое шило в мешке не утаишь.

Тут немец на красную площадь однажды сел и любительскими радарами и телескопами его не засекли.

Да в меня каждый Специалист на этом сайте, считает своим долгом, кинуть камень, завернутый в бумажку РНР — быдло.

Делать им нечего кроме как с пыхпыхом писькомерство устраивать. Фигня это всё - про реальное вэбговно «перенасыщение страниц шизоидным жабоскриптом» не вспоминают, а может даже считают достижением, так что забей. Интернеты есть кому заливать говном и без пых-пыха - борьба идёт в основном между сортами говн за место в банке, а оно ограничено.

Napilnik ★★★★★
()
Ответ на: комментарий от pihter

В момент рождения РНР не то что про AJAX, про JS-то не все занли :) Я говорил именно о моменте времени, когда РНР только начинался

Опять между строк?
Может 20 лет назад ПХП и имело смысл, но сечас, когда знают о JS, проще писать на JS+HTML чем на JS+HTML+PHP, не так ли?

поисковики, например, такое еще не умеют

1.Умеют. И роутиг прописан и тэмплэйты и Гугл это отредерит быстрее чем ваш хомяк
2.Огромное количство тулзов, которые отрендеря все за вас и отдадут поисковикам в пару комманд.

grim ★★☆☆
()
Ответ на: комментарий от grim

В третьих уже лет 5 страницы принято рендерить на клиенте а на сервере держать статический HTML

Только на тормозных сайтах. На быстрых принято генерить html.

PolarFox ★★★★★
()
Ответ на: комментарий от grim

Чтобы скучно не было?

Нет. Чтобы посетителей не терять из-за тормозов, глюков в хистори и урлах, неявно непроходящих запросов на медленных и нестабильных коннектах и прочих неудобств, которые возникают когда жквери-ангуляро-кодеры пытаются реализовать на убогом жабаскрипте то, что уже 20 лет отлично реализовано в браузерах.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Нет. Чтобы посетителей не терять из-за тормозов, глюков в хистори и урлах, неявно непроходящих запросов на медленных и нестабильных коннектах и прочих неудобств, которые возникают когда жквери-ангуляро-кодеры пытаются реализовать на убогом жабаскрипте то, что уже 20 лет отлично реализовано в браузерах.

Что за глупости?
Всё это можно сломать кривыми руками отрендерив все на сервере.
А можно сделать нормально на клиенте.

grim ★★☆☆
()
Ответ на: комментарий от grim

уже лет 5 страницы принято рендерить на клиенте а на сервере держать статический HTML

Ну это же не всегда возможно (да и трудозатратно, неудобно), и там где возможно зачем вообще PHP? Он же для динамических страниц.

mbivanyuk ★★★★★
()
Последнее исправление: mbivanyuk (всего исправлений: 1)
Ответ на: комментарий от PolarFox

На клиенте сделать нормально (не наткнувшись при этом в какой-нибудь corner case) очень и очень сложно.

Если не ломать специально, то оно работает искаропки.
Но если занадта умные лезут в потроха, то получается песец.
Приходится нанимать консультантов, которые поправят и постараются сделать как было.

grim ★★☆☆
()
Ответ на: комментарий от anonymous

Крикунам другого и не дано

У тебя серия постов абсолютно без содержания: одни оскорбления остались. Ну и кто, в таком ключе, станет с тобой спорить? Интереса нет.

Прощай, анон. Постарайся ставить не более одного смайла в предложении

pihter ★★★★★
()
Ответ на: комментарий от grim

Я говорил именно о моменте времени, когда РНР только начинался

Опять между строк?

Почти: сообщение, которое ты комментировал, было не первой моей просьбой показать мне язык, а повтором моей же просьбы, прозвучавшей ранее. Там я говорил именно о 20-летней давности

Может 20 лет назад ПХП и имело смысл, но сечас, когда знают о JS, проще писать на JS+HTML чем на JS+HTML+PHP, не так ли?

Было бы проще все бы так и делали. А по этой можеди бекэнд-языки вообще отпадают и умирают. Из того, что до сих пор не вымерли, можно сделать вывод что, таки, не проще

поисковики, например, такое еще не умеют

1.Умеют. И роутиг прописан и тэмплэйты и Гугл это отредерит быстрее чем ваш хомяк

ЯННП: ты пишешь страничку, котоая с сервера забирается статикой, в браузере уже начинает выполняться JS, который забирает (прямо из БД или, таки, есть бекэнд?) некоторые данные с сервера, дорисовывает страничку, наполняет контентом? Все верно? И как это будет индескироваться? Я слыхал, что гугль научился в JS, но, во-первых — на таком уровне? А во-вторых, гугль — он не один на свете: 60% русскобуквенных запросов обрабатывает яндекс

pihter ★★★★★
()
Ответ на: комментарий от grim

Во вторых JS тоже без проблем рендерить «Динамически-генерируемую домашнюю страницу»

Обычно такие страницы - тормозное говно. А маломощные компы и устройства тоже начинают тормозить.

В третьих уже лет 5 страницы принято рендерить на клиенте а на сервере держать статический HTML

Скажи это W3C. Это принято быдлокодерами, которые засерают интернет своей парашей с кучей хлама в виде ненужных анимаций и прочей херни. Как раз уже лет 5 разрабы браузеров, чтобы поддерживать это все превращают браузеры в тормозных и глючных черепах.

zevilz ★★★
()
Ответ на: комментарий от zevilz

Удваиваю этот комментарий, если все вычисления перекладывать на клиента это маразм, про браузеры очень удачный пример, результат последних 5 лет перекладывания.

Frost ★★★
()
Ответ на: комментарий от grim

Может 20 лет назад ПХП и имело смысл, но сечас, когда знают о JS, проще писать на JS+HTML

Пример из реальности - банковские карты, ты их чего на клиенте собрался перебирать?:)

Frost ★★★
()
Ответ на: комментарий от anonymous

Для крупных проектов PHP зло - это факт

Да, ты прав. PHP использует только такая мелочь, как Facebook, Вконтакте, Wikipedia, Flickr, Digg, сервисы Yahoo... На нём написаны такие никому не известные вещи, как Wordpress, Drupal, ownCloud, phpMyAdmin/Adminer... :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Да, ты прав. PHP использует только такая мелочь, как Facebook, Вконтакте, Wikipedia, Flickr, Digg, сервисы Yahoo...

Ты лучше приведи пример нового крупного проекта на PHP. Просто когда вариантов нет, приходится использовать то что есть.

anonymous
()
Ответ на: комментарий от anonymous

Ты лучше приведи пример нового крупного проекта на PHP

Приведи пример вообще нового крупного проекта на любом языке. Они, знаешь, не каждый день запускаются, сразу становясь крутыми и известными :D Боюсь, что в любом топе ты найдёшь только старые проекты.

ownCloud, кстати, совсем недавно стартовал.

KRoN73 ★★★★★
()
Ответ на: комментарий от pihter

У тебя серия постов абсолютно без содержания: одни оскорбления остались. Ну и кто, в таком ключе, станет с тобой спорить? Интереса нет.

Ни одного оскорбления, только факты. А факты в том, что у тебя нет не интереса, у тебя нет аргументов. Ты пытаешься извернуться даже тогда, когда не прав. А не прав ты в том, что наглым образом выставляешь ложь за правду, что PHP - это язык не общего назначения, что C++ - является прородителем всех других языков с поддержкой ООП. Это слив номер один, который засчитан. :-) Вместо внятных критериев что такое языки общего назначения, у тебя только ссылки на то, как позиционируются конкретные языки - Lua и PHP. Но даже то, что на титульной странице PHP черным по белому сказано что он «general purpose language» не отменяет твою упоротость, и ты продолжаешь изворачиваться и заниматься софистикой. Так поступают только обречённые на вечный фэйл и слив :-) Зачёт :-)

anonymous
()
Ответ на: комментарий от Napilnik

К водокачке отношения не имею

Несмотря на это, у тебя в кране есть вода. Следовательно, ты — участник заговора.

dexpl ★★★★★
()
Ответ на: комментарий от pihter

Было бы проще все бы так и делали. А по этой можеди бекэнд-языки вообще отпадают и умирают. Из того, что до сих пор не вымерли, можно сделать вывод что, таки, не проще

Так и на Cobol до сих пор пишут.
Хотите сказать что он так хорош?
Легаси будет тянуть ПХП ещё лет 10 а может и 20
А тот-же express для server side JS весьма прост и осилить зная JS ничуть не сложнее чем любой ПХП фрэймворк

ЯННП: ты пишешь страничку, котоая с сервера забирается статикой, в браузере уже начинает выполняться JS, который забирает (прямо из БД или, таки, есть бекэнд?)

Очевидно зависит от задачи.
Многие БД уже умеют JSON

И как это будет индескироваться?

«гугль научился в JS»

Я слыхал, что гугль научился в JS, но, во-первых — на таком уровне?

На достаточном для средней сложности приложения

А во-вторых, гугль — он не один на свете: 60% русскобуквенных запросов обрабатывает яндекс

Я им ни разу в жизни не пользовался, так что не могу помочь.
Если вам оно нужно, спросите у них самостоятельно.

grim ★★☆☆
()
Ответ на: комментарий от mbivanyuk

Ну по-стариковски или по-юношески, да. Для этого он и создан собственно.

Именно по стариковски.
Юноши смогут изучить что-то новое.

grim ★★☆☆
()
Ответ на: комментарий от zevilz

Обычно такие страницы - тормозное говно. А маломощные компы и устройства тоже начинают тормозить.

Я это слышу уже лет 20.
Кривые руки понятие не новое.
Нормально сделанный SPA работает быстрее чем набор динамически генерящихся страниц особенно на слабых компьтерах, телефонах или при медленном интернете.

Скажи это W3C

W3C об этом осведомлен.
Именно благодаря стандартам W3C вся эта благодать стала возможна.

быдлокодерами, которые засерают интернет своей парашей с кучей хлама в виде ненужных анимаций и прочей херни

Повторю:
- На проблемы интернета жалуются уже лет 20 минимум.

grim ★★☆☆
()
Ответ на: комментарий от Frost

Пример из реальности - банковские карты, ты их чего на клиенте собрался перебирать?:)

Моя твоя не понимай.

grim ★★☆☆
()
Ответ на: комментарий от KRoN73

PHP использует только такая мелочь, как Facebook, Вконтакте, Wikipedia, Flickr, Digg, сервисы Yahoo... На нём написаны такие никому не известные вещи, как Wordpress, Drupal, ownCloud, phpMyAdmin/Adminer... :)

Очевидно это начиналось как хомяки и затем в силу лени или отсутствия времени не было переписано.

Вы расскажите не о легаси а о том, какие новые крупные проекты созданы на PHP

grim ★★☆☆
()
Ответ на: комментарий от KRoN73

Приведи пример вообще нового крупного проекта на любом языке.

Instagram, iCloud, Uber, Snapchat, Pinterest, Slack, HipChat, New relic.

Стартовали в 2010 или позже.

anonymous
()
Ответ на: комментарий от grim

Румеется, ты сам то себя понимаешь? Моя твоя тоже непонимай, я даже не рассматриваю php как основной инструмент, но как я понял ты хочешь чтобы основные операции обрабатывались на клиенте и привел тебе пример того что недопустимо. Понимай сейчас?

Frost ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.