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

А то, что в Си или в Си++ эти переменные доступны через getenv(), делает их непригодными для web

Ну почему же: вполне пригодными. Только в сях еще переполнения бывают и падения при прочих выходах за границы. На сях можно сделать CGI-скрипт, только безопасность и надежность будут еще хуже, чем если утюгом шурупы закручивать. (ну а че, можно же)

pihter ★★★★★
()

А в августе этого же года вышла стабильная значительная версия PHP 5.6.

И несмотря на это в базовую поставку rhel7 входит только 5.4 ... facepalm.jpg

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

Эт расплата за низкоуровневость: тебе дана силушка сделать все, что может компьютер — у тебя руки развязаны полностью.

Тогда почему бы не писать прямо в машинных кодах? Ты хоть понимаешь, о чём речь вообще идёт? Речь идёт о языке программирования, который, как известно всем более-менее грамотным людям, должен обладать такими качествами, как выразительность и краткость. Ты хоть знаешь в чём, собственно, заключается программирование, и почему на свете так много языков? Цепепе с его низкоуровневостью и убогостью шаблонов не позволяет расширять язык, но зато строит везде засады и ловушки, буквально на каждом шаге.

Никто не обещает, что это будет легко.

Если ты почитаешь книгу «Дизайн и эволюция Си++», то ты удивишься, узнав, что создатель Си++ ставил своей целью «сделать труд программиста удовольствием». Кто-нибудь получает удовольствие от разработки на си++ реального ПО? Все отзывовы от хомячков сводятся к тому, что «на крестах писать сложно, но зато какая силушка (имеется в виду, сколько нужно героически преодолеть несуществующие трудности)» :-)

Да всегда казалось что так и надо: это ж настолько традиционная вещь, что мир без нее не представляется.

Нет, товарищ пионэр. Шаблоны цепепе - очень ограниченное средство языка. А ты думаешь иначе, потому что ничего другого то и не видел. Потому то и следует тебе расширять кругозор.

Но не мне и не тебе судить о дохлых страусах, ибо С++ — свершившийся факт, как день и ночь: нам остается два пути — принять или бугуртить

Судить мне, так как цепепе я знаю очень хорошо :-) Факт того, что цепепе стал популярным - такое же недоразумение, как и популярность пехепе. Хотя, по сеньке шапка. Дело в том, насколько интеллектуальным является большинство. И цепепе с пехепе - хорошие лакмусовые бумажки умственной подготовки большинства :-)

Да я не настолько Си-гуру, чтоб для себя делать большую разницу между Си и Си++. Как по мне — это просто дело вкуса, как тебе нравится. Хочешь ООП — получи, нравится процедурное — тоже никто не запрещает.

После этих слов, я тебя ещё раз пошлю учиться, так как ты явно не в теме :-)

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

Топором тоже почти все можно: можно людей убивать, можно коров, можно сорняки в огороде выводить, можно пиво открывать и капусту придавливать — да хоть картины топором рисовать можно, но это же теперь не значит, что тот, кто придумывал топор, задумывал его как универсальные инструмент для всего?

Дорогой крикун, если бы ты читал того же Страуструпа, то ты бы знал, что «доказательство по аналогии ошибочно». Не надо заливать про топоры и кисточки. Они не имеют к языкам никакого отношения. Учил бы ты матчасть :-)

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

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

У быдлокодеров даже на пехепе бывают выходы за границы и падения с последующим выводом в браузер «mysql connection error» :-) Причём это как правило чуть больше, чем всегда :-)

утюгом шурупы закручивать

Странный кролик, однако :-)

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

Jessie вышел буквально «на днях», а rhel7 уже год как, но 5.5 на момент выхода уже был. Он даже в 20-й Fedora был ...

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

Тогда почему бы не писать прямо в машинных кодах?

Пишут. Когда это действительно нужно.

Ты хоть понимаешь, о чём речь вообще идёт? Речь идёт о языке программирования, который, как известно всем более-менее грамотным людям, должен обладать такими качествами, как выразительность и краткость

Не всегда. Ассемблер — он ЯП? Брейнфак? РНР вот обладает и выразительностью и краткостью, но вам он, отчего-то, все равно не по душе

Кто-нибудь получает удовольствие от разработки на си++ реального ПО?

Страуструп + его банда? :) Кто-то явно получает, че уж ты

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

Ты хоть знаешь в чём, собственно, заключается программирование, и почему на свете так много языков?

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

Цепепе с его низкоуровневостью и убогостью шаблонов не позволяет расширять язык

Там можно было перегружать операторы: тогда это казалось волшебством :)

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

Ассемблер — он ЯП?

Ассемблер язык программирования, который обладает неимоверно высокой выразительностью по сравнению с маш. кодами. Потому то и был создан. Ещё более выразительным ассемблеров наши дни является Си, который, привнося большую абстракцию, является по сути кроссплатформенным ассемблером де факто.

Брейнфак?

Брэйнфак - это тема для флейма :-)

РНР вот обладает и выразительностью и краткостью

У него сильно нарушен баланс между выразительностью и краткостью. И сам язык не позволяет этот дисбаланс как-то компенсировать. Короче, язык просто полный отстой :-)

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

создатель Си++ ставил своей целью «сделать труд программиста удовольствием»

надо понимать, ему виделось что кодить все на ООП — удовольствие, по сравнению с Си. Если звезды зажигают, значит это кому-нибудь нужно. Почему ты думаешь что твое мнение правильное, а его — нет? Ты чем-то лучше него?

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

А ты думаешь иначе, потому что ничего другого то и не видел.

Не спорю и не скрываю. Я — не профессиональный программист

Потому то и следует тебе расширять кругозор.

Кругозор нужно расширять по другой причине: как жить-то без этого? Я за тем и пришел

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

Он же пока релизнётся сколько времени пройдёт, можно всё это время спокойно сидеть на тестинге. ИМХО конечно же.

Я сейчас тут погуглил, RHEL 7 вышел в июне 2014, а PHP 5.6 в августе. Вот потому и не завезли.

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

надо понимать, ему виделось что кодить все на ООП — удовольствие, по сравнению с Си. Если звезды зажигают, значит это кому-нибудь нужно. Почему ты думаешь что твое мнение правильное, а его — нет? Ты чем-то лучше него?

Мало ли что ему виделось. Теперь ему икается очень нехило, это как следствие его вИдений :-) А почему ты думаешь, что его мнение о том, как надо программировать, не подлежит оспорению? :-) У меня есть реальный опыт использования цепепе, и я знаю, как его варить, за что его критиковать, и как делать не надо :-) ООП, в том виде, в котором ты его знаешь (а знаешь ты его только в виде передачи сообщений) - это всего лишь верхушка айсберга, чтобы хоть как-то упорядочить малограмотную толпу лентяев :-)

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

Не спорю и не скрываю. Я — не профессиональный программист

Зато споришь на предмет языков программирования с профессиональным программистом :-) Весёлый ты товарищ :-)

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

А не ты ли мне лечил что любой язык можно использовать для любых задач?

Нет, не я. Я утвержал, что тот язык, который может вызывать сишные библиотеки претендует/является языком общего назначения. И оно так и есть.

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

но это же теперь не значит, что тот, кто придумывал топор, задумывал его как универсальные инструмент для всего?

Ну вообще-то простые инструменты, как молот, топор или нож были придуманы именно как универсальные - ими делали всё.

no-such-file ★★★★★
()

Отличная дата, отличный язык с потенциалом, несмотря на недостатки - с юбилеем!

Так и до возраста C постепенно дотянет.

swwwfactory ★★
()
Ответ на: комментарий от no-such-file

Вот с этим не согласен, считаю код питона легко читаемым и поддерживаемым.

Код получается многословный

В сревнении с чем? С руби, согласен. С перл, согласен. Но я хочу взлянуть на того, кто решиться на крупный проект на перле...

krasoffski
()

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

Помянем. Всё таки начинал с него.

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

Зато 5.5 уже был. Но они предпочли включить в платформу на следующие 10 лет какой то 5.4.

Разница между 5.4 и 5.5 незначительна и останется таковой все эти 10 лет.

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

Ну не знаю. Тем более если 10 лет.

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

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

Наши прогеры так не думают, и ждали именно 5.5.

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

Это вы так от радости прыгаете перед выходом php 7 ? С учетом , того , что обратная совместимость все-таки поломана, я так поняла сейчас начнется бурное переписывания многочисленными халтурщиками всего пэхэпэшного хлама. На python это уже проходили, все растянулось на пятилетие.

После долгого застоя у пэхэпэшников появился луч надежды на светлое будущее. Вот вот чахлый пхп взлетит аж на 70%. Но те кто пять десять лет назад убежал от пхп на нормальные(человечные) языки вряд ли вернется назад.

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

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

Это вы так от радости прыгаете перед выходом php 7 ?

Как что-то плохое.

Да, не спорю, с обратной совместимостью будут проблемы. Но что-то подсказывает мне, что миграция произойдёт гораздо быстрее, чем в питоне. Изменения не такие значительные. Уже сейчас можно собрать седьмую версию и понемногу начинать миграцию. Разработчики фреймворков и библиотек уже работают над этим.

Ну и наконец в пятой ветке тоже было куча обратнонесовместимых изменений, я имею ввиду между 5.4 и 5.5 например, и т.д. Никто не жалуется. А кто не хочет мигрировать — ССЗБ.

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

В сревнении с чем? С руби, согласен. С перл, согласен. Но я хочу взлянуть на того, кто решиться на крупный проект на перле..

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

считаю код питона легко читаемым и поддерживаемым

Это если не ходить дальше джанг, фласков и прочих хеловордов. А в коде, где натыкано всяких метаклассов, свойств, перегрузки операторов, множественного наследования и прочего колупания в кишках - уже не так всё красиво.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от Kilte

Как что-то плохое.

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

Вот когда не разделяют маркетинг и полезное развитие, становится до тошноты противно )))

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

Вот когда не разделяют маркетинг и полезное развитие, становится до тошноты противно )))

Это жизнь, барышня.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

А в коде, где натыкано всяких метаклассов, свойств, перегрузки операторов, множественного наследования и прочего колупания в кишках - уже не так всё красиво.

Как раз наоборот, ты можешь написать ORM или валидатор форм без метакласов, но пользоваться им будет не так удобно. Да и использовать метаклассы , множественное наследование вовсе не обязательно.

Кстати , метаклассы это круто и красиво!

yanka ★★
()
Ответ на: комментарий от no-such-file

Ну я почти с вебом не работаю, а в системном программировании все норм.

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

Судить мне, так как цепепе я знаю очень хорошо

Лучше Страуструпа? :)

Факт того, что цепепе стал популярным - такое же недоразумение, как и популярность пехепе

Недоразумение... Ага, как же. Есть такое понятие «стрельнуло», значит попало прямо в точку и в нужный момент.

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

Элитарный анонимус :) простое всегда популярно (я про РНР), какой язык во время рождения сабжа позволял крафтить простенькие странички меньшими усилиями?

я тебя ещё раз пошлю учиться, так как ты явно не в теме

Да конечно нет, но изучать целый С++ ради того, чтоб можно было с тобой на равных поспорить, мне как-то лениво :)

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

«доказательство по аналогии ошибочно»

А я и не доказываю. Я мысль свою иллюстрирую. Мысль проста: вы, сударь, заявляете что РНР — язык общего назначения и показываете что он проигрывает другим языкам ОН. Покажите мне язык на котором проще написать домашнюю страничку и я уткнусь, не покажете — и уткнитесь вы уже (хоть в этом треде)

Не надо заливать про топоры и кисточки. Они не имеют к языкам никакого отношения

Ну смотри, поймаю же и тебя на аналогии. Признаешь тогда, что ты — пустозвон?

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

ты можешь написать ORM или валидатор форм без метакласов, но пользоваться им будет не так удобно

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

Кстати , метаклассы это круто и красиво!

MOP - вот это круто и красиво, а метаклассы в питоне, это костыль.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от anonymous

У быдлокодеров даже на пехепе бывают выходы за границы и падения

выход за границы ассоциативных массивов с переполнением? А ну покажи, лжец!

утюгом шурупы закручивать

Странный кролик, однако :-)

Я не кролик, я — разумное существо, я не могу жрать траву и ходить под себя: МЯСА, МЯСА!!!

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

Ассемблер язык программирования, который обладает неимоверно высокой выразительностью по сравнению с маш. кодами

О как! Да оно относительно? А я думал у тебя только черное и белое бывает...

Ещё более выразительным ассемблеров наши дни является Си, который, привнося большую абстракцию, является по сути кроссплатформенным ассемблером де факто.

О, я тоже так думаю.

Брэйнфак - это тема для флейма :-)

Тем не менее, язык? Да. С какой целью был создан? Чтоб быть выразительным? Ага.

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

РНР вот обладает и выразительностью и краткостью

У него сильно нарушен баланс между выразительностью и краткостью

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

Короче, язык просто полный отстой :-)

короче, у вас религиозная ненависть, признайтесь

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

А почему ты думаешь, что его мнение о том, как надо программировать, не подлежит оспорению?

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

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

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

Надо понимать, у Страуструпа нет такого опыта и знания, ну что за бред?!

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

Откуда ты взял про многословность python? У меня такое ощущение, что ты на php или python или java ни строчки ни написал )))

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

Я — не профессиональный программист

Зато споришь на предмет языков программирования с профессиональным программистом

Ты дак вон вообще лучше Страуструпа знаешь как должен быть на самом деле устроен С++ и ниче, не стесняешься :)

Я спорю с целью расширения кругозора. А ты просто самоутверждаешься, по ходу

Весёлый ты товарищ

Сам тащусь :)

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

если вы не написали ни одной строчки на пхп, у вас еще все впереди

Тьфу на тебя. Мне аж страшно стало.

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

Откуда ты взял про многословность python?

ты можешь написать ORM или валидатор форм без метакласов, но пользоваться им будет не так удобно

От тебя же, дорогуша. Не удобно = больше корявой писанины. Метакласс = корявая писанина, но один раз. Так и так кода получается больше, чем на пыхе. Я уж не говорю про то, что в питоне до сих пор нет нормальных лябд - даже в кресты уже ламбды запилили, позорище.

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

А ещё — трансляция ассемблера 8080 в машинные коды ручкой на листке бумаги :D

Ну я на Вектор 06ц писал (школьником) прямой машинный код. Немного, но тем не менее. Зачем для этого бумага? Нда, блин, не повезло мне в своё время со средой... Ща был бы не хуже Линуса, наверное.

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

Я утвержал, что тот язык, который может вызывать сишные библиотеки претендует/является языком общего назначения

А я утверждаю, что это — неправильная мысль. Ты вопрошал почему так много языков, я сказал — задач много и языки специализированные. Сегодня, почти все скриптовые языки умеют в сишные либы. По твоей логике, они все являются ЯОН. Ну и объясни мне зачем тогда их так много?

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

Ну вообще-то простые инструменты, как молот, топор или нож были придуманы именно как универсальные - ими делали всё.

Все да не все. Картины им не писали

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

Картины им не писали

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

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