LINUX.ORG.RU

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


0

0

Десять лет назад 8 июня 1995 года Rasmus Lerdorf официально анансировал Personal Home Page Tools, сейчас известный как PHP: Hypertext Preprocessor - платформо-независимый язык скриптов.

Официальный сайт: http://www.php.net/

Скачать: http://www.php.net/downloads.php

>>> Оригинал послания



Проверено: Demetrio ()

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

> Так если на этой легковушке предлагают через болото ехать?

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

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

Хренте. Не проложено тут дорог. Разве что грунтовки, и то, на них какие-то засранцы набросали чеснока, а кое где и ежей противотанковых.

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

> просто инструмент для работы под web сервером. Java универсальный язык. Некорректно сравнивать.

В таком случае, наверное, некорректно и ругать php, который честно
делает свою работу и не претендует на универсальность?

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

Да хреново он свою работу делает!

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

>В таком случае, наверное, некорректно и ругать php, который честно делает свою работу и не претендует на универсальность?

Некорректно. Свою работу он делает. На универсальность не претендует. Вы же не будете ругать пылесос за то что он не умеет кофе варить? Сайты на нём писать можно. На сервере это прекрасно исполняется. А то что php под webbrowserом не работает это от него не требуется. Это все го лишь удобный (серверный) скриптовой язык.

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

>Мне хватает c++ для написания cgi, но это не значет что надо php хаять. Если php прожил 10 лет и им до сих пор пользуются - знать кому то это надо. А по поводу дырявости так старый добрый закон гласит что все созданное человеком ненадежно

Правильно говоришь. Полностью согласен. Респект!

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

у меня есть 2 вопроса к уважаемому php-coder'у. точнее один, но из двух частей.

1. http://bugs.php.net/bug.php?id=27442

2. php -r '$a=1; $b = 0; $c=$a/$b; echo "c=$c\n" ; $e=5 $d=($a+$c)/$e; echo "$d\n";'
c=
0.2

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

если это норма, не могли бы вы (или другой php-гуру) объяснить почему ? в php своя особенная математика со своими уникальными законами ?

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

>собственно вопрос. скажите пожалуйста, если после деления на ноль программа продолжает выполняться, это нормально ?

НЕТ! =)

>если это норма, не могли бы вы (или другой php-гуру) объяснить почему ?

Это не норма. Если вас интересуеют ответы php-гур, а не кодеров ;), то могу вам сказать, что видел их в форуме на phpclub.ru

>в php своя особенная математика со своими уникальными законами ?

В РНР лишь свои, уникальные, баги ;)))

P.S. Надеюсь, что я ответил на ваш вопрос

php-coder ★★★★★
()
Ответ на: комментарий от AlexGor

> собственно вопрос. скажите пожалуйста, если после деления на ноль программа продолжает выполняться, это нормально ?

А что тебя смущает? Вообще-то операция деления на ноль -- это отнюдь не катастрофа вселенского масштаба, тем более, что интерпретатор предупреждает тебя об этом. Warning: Division by zero in PHPDocument1 on line 4

> более того, переменная, в которой хранится результат этой операции используется далее по коду.

Переменная принимает булевое значение false и при дальнейшем её использовании в математической операции будет приведена к нулю.

> объяснить почему ? в php своя особенная математика со своими уникальными законами ?

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

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

>> более того, переменная, в которой хранится результат этой операции используется далее по коду.

>Переменная принимает булевое значение false и при дальнейшем её использовании в математической операции будет приведена к нулю.

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

>> объяснить почему ? в php своя особенная математика со своими уникальными законами ?

>Java, насколько я знаю, в этом случае бросает исключение. Возможно, в PHP тоже до этого дойдут, но мне это по барабану -- совершенно не напрягает. А про уникальные законы языка -- они есть в каждом языке.

Java бросает exception, да. если вы его специально не обработаете, программа завершится. разница между поведением Java и php очевидна, я думаю.

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

> математики, ау. проясните вопрос.

Я далеко не математик, но с практической точки зрения гораздо лучше
получить переменную со значением false, чем непонятночто-непонятнозачем.

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

> вы считаете это правильным поведением, гарантирующим корректный результат математических операций ? по моему, это не так. математики, ау. проясните вопрос.

Не берусь судить о правильности такого подхода, но его порочности я тоже не вижу. Это можно принять как данность. А в математике результат такой операции будет +бесконечность. Тоже себе неплохой результат -- с ним можно работать. :) А, кстати, что говорит Java при попытке извлеч тангенс из угла 90 градусов? PHP говорит, что он равен 16331778728384000. :D

> если вы его специально не обработаете, программа завершится. разница между поведением Java и php очевидна, я думаю.

Естесственно. Я и не говорил о схожести методов. И подход Java мне нравится больше. Но в PHP вам ничего не мешает перехватывать эту ошибку и делать, что вам заблогарассудится -- он прерывания программы, до перезагрузки сервера. set_error_handler, если интересует.

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

> чем непонятночто-непонятнозачем.

Не совсем верно. Вы получаете вполне определённое исключение. Вот только продолжить выполнение программы с места исключения уже не получится. (Если такая возможность есть в Java, то хотел бы узнать, как это сделать.)

the_one
()

какой же это язык скриптов? это язык для веб пагесов. вот перл - это язык скриптов =)

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

Работа над ошибками :) *при попытке извлеч тангенс = при попытке извлечь тангенс *он прерывания программы = от прерывания программы

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

>И что только люди не придумают, лишь бы не учить перл

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

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

Мне кажется, поведение программы при возникновении ошибки деления на
ноль должно быть конфигурируемым. Есть много случаев, когда остановка
программы из-за такого пустячка неоправдана. Бывает, конечно, и наоборот.

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

>зоопарк 8)

разруха - в головах (с)

только где это понять "дону" который скакал аки коза по разным языкам явно не утруждая себя серъезным их изучением

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

>неделя проходит пока они дыры залатывают, ещё неделя пока это в дистр попадет...

дальше можно было не читать. человек явно слишком вскользь с пшп работал. если вообще работал

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

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

Согласен. И тут PHP лучше (гибче?), чем Java и любой другой язык, бросающий исключения при делении на нуль, т.к. он (PHP) предоставляет средства управления этим поведением. В принципе, PHP тоже можно научить бросать исключения в таких случаях. И несложно -- до 10 строчек.

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

> > /me ждет Perl6. Судя по текущему положению, это будет the end of all things ;)

> Второе пришествие случится раньше

Даладно. Учтя, что "общее видение" было завершено полтора года наза, и посмотрев на текущее состояние Parrot/Pugs, можно скорее удивиться скорости разработки.

Через год 6.0.0 будет, self-hosting и т.д.

anonymous
()

Маленький тест:

Поиск в гугле по домену .gov (поверим что там нету кодеров-пионеров?):

e.g.: http://www.google.com/search?hl=en&lr=&q=site%3Agov+php&btnG=Search

"site:gov php" Results 1 - 10 of about 4,230,000 for site:gov php.

"site:gov zope" Results 1 - 10 of about 584 for site:gov zope

"site:gov perl" Results 1 - 10 of about 72,600 for site:gov perl.

"site:gov java" Results 1 - 10 of about 583,000 for site:gov java

Ну как? Полегчало всем критикам PHP? Угадайте сколько денег заработано на этих сайтах.

Regards,

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

> перл менее удобен для веб пагесов чем пшп.

Ну-ка, ну-ка, расскажи, чем?

В принципе, я знаю. Перловка - один из самых страшных языков, чтобы не ней хорошо писать - требуется определенная самодисциплина (как и для плюсов). "Perl gives you enough rope to hang yourself while shooting yourself in the foot" (C) Wall, IIRC.

Зато при соблюдении гигиены он очень, очень мощен. И еще у него есть CPAN.

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

> И еще у него есть CPAN.

погугли на тему PEAR и PECL
обьем там поменьше, конечно, но тоже ничего

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

Эй Yilativs, ты бы чем жабу ПЕАРИТЬ выучил бы лучше как к приватным полям через reflection обращаться. Элементарных вещей не знаешь мля, а тудаже.

Дла полного удовлетворения, может дать тебе ссылку на проекты ОС на жабе? Смотри только штаны не намочи ...

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

>В змее

Python это не от змеи.

>нету много чего, что есть в яве (в основном в смысле рантайма, а не языка).

Например?

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

На PHP пишут не менее грязно, чем на перле. Особенно пионеры (а не-пионеры на PHP и не пишут).

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

.gov - как раз самое пионэрское. У говов на приличных программеров денег никогда не водится.

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

>Маленький тест:
>"site:gov php" Results 1 - 10 of about 4,230,000 for site:gov php.
Дык на PHP маленькие сайтиы лобают - по тому как проще язык (в силу низкого функционала).
Этак самый хороший язык - бейсик 

в том же google
"security hole in java" 587
"security hole in php" 27 000 ;-))))
"security hole in perl" 761 

Может по этому крупные проекты пишут на java?
Sony, HP наш job.ru
А для простых вещей годится perl, надежней и удобней чем php.


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

> Дык на PHP маленькие сайтиы лобают - по тому как проще язык (в силу низкого функционала).

расскажи плиз про низкий фунционал поподробнее
в каком месте он низкий?

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

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

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

>> Мне кажется, поведение программы при возникновении ошибки деления на ноль должно быть конфигурируемым. Есть много случаев, когда остановка программы из-за такого пустячка неоправдана. Бывает, конечно, и наоборот.

> Дык, это и есть --- обработка исключений.

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

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

А ХЗ, о любом, где есть исключения. Скажите, в каком языке можно возобновлять выполнение программы при возникновении исключения? Само понятие исключения, если я правильно помню, опровергает такую возможность.

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

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

Если ты подумаеш то поймеш почему "продолжить выполнение программы С ТОГО места где оно было прервано" - очень редко имеет смысл.

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

Обычно при возникновении исключения дальнейшая работа метода не имеет смысла. Впрочем, можно завернуть в try {...} catch (Exception E) {}

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

>А ХЗ, о любом, где есть исключения

В окамле --- запросто. Например.

let rec length = fun list -> 1 + try (length (List.tl list)) with _ -> 0 ;;

# length [1;2;3;4];; - int: 4

Во время выполнения функции length возникло исключение, но это не мешает программе работать.

>Само понятие исключения, если я правильно помню, опровергает такую возможность.

Первый раз такое слышу. Можешь по--подробнее рассказать.

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

>А ХЗ, о любом, где есть исключения

В окамле --- запросто. Например.

let rec length = fun list -> 1 + try (length (List.tl list)) with _ -> 0 ;;

# length [1;2;3;4];; - int: 4

Во время выполнения функции length возникло исключение, но это не мешает программе работать.

>Само понятие исключения, если я правильно помню, опровергает такую возможность.

Первый раз такое слышу. Можешь по--подробнее рассказать.

ugoday ★★★★★
()

По теме. Да уж, значительное событие. Скажите мне, чем php удобнее, чем perl? IMO, он стал популярен только потому, что он embedded, и там не надо думать о "Content-type: text/html\n\n", и как следствие - вообще не надо думать.

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

Ой ну не надо заливать, да? Очень знаешь ли удобно кидать current continuation параметром исключения.

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

В окамле исключения быстрые, а в Жабке так не разгуляешься, придурковатые создатели Жабки думали, что исключения - только для ошибок, а не для логики.

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

Боюсь что флейм окамл вс жаба я сейчас не потяну. Какашками кидаться неохота, а знаний (под жабу ничего не писал) --- недостаточно.

P.S. Есть желание выучить жабу, чтобы узнать --- вправду ли это такое говно, как нас учит Антихрист.

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

>Ну-ка, ну-ка, расскажи, чем?

парадигмой. мне удобнее встраивать пшп код в страницу чем юзать CGI. да и возможности у них на одинаковом уровне

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

>Yilativs, ты бы чем жабу ПЕАРИТЬ выучил бы лучше как к приватным полям через reflection обращаться. Элементарных вещей не знаешь мля, а тудаже.
А ты знаешь? Без настроек security.manager код в студию ;-)

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

>А для простых вещей годится perl, надежней и удобней чем php.

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

а по поводу простых вещей - есть перлобыдлокодеры которые для извлечения второго столбца из текста хватаются за перл вместо awk

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

>и как следствие - вообще не надо думать

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

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

А что, разделять код и данные считается неудобным?

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