Pull to refresh

Comments 66

UFO landed and left these words here
учту на будущее ;)
А я так писал парсер xml-файлов и это действительно жесть :) Basic отдыхает :)
Кросавчег! Давно хотел найти подобное описание с примером.
Регулярно использую PHP в Linux. Причем, как в оконном режиме (PHP-GTK), так и в консольном.

Компиляция, я так понял, для распространения приложений, исходный код которых не хотелось бы раскрывать? Надо ли такие приложения на PHP писать?
Гугл по данной фразе ничего интересного не выдает. Может поделитесь ссылкой?
Вот это действительно жесть! =)))
Если скрипты должны работать и на PHP < 4.3.0, то надо использовать $_SERVER['argv'] и $_SERVER['argc'] вместо $argv и $argc

http://php.net/manual/ru/features.commandline.php
Начиная с PHP 4.3.0, при использовании CLI SAPI переменные $argc и and $argv зарегистрированы и заполнены соответствующими значениями. В более ранних версиях создание этих переменных, так же, как и для CGI или модуля веб-сервера, требует значение on директивы register_globals. Независимо от версии PHP или статуса опции register_global они всегда доступны как элементы массива $_SERVER или $HTTP_SERVER_VARS. Например: $_SERVER['argv']
да, не учёл. Однако сейчас мало кто использует PHP 4.3.0 :)
когда делаешь кастомное приложение, то можно смело забить.
но, когда делаешь боксовый скрипт, то лучше перестраховаться.
А не пробовал ли кто запускать этот exe`шник через апачку как cgi?

Будет ускорение работы?
Для особо понятливых - читаем OUTRO, оно написано для того чтобы таких вопросов не возникало.
Можно еще топором ложку выстругать :-)
Ложкой хотя бы есть можно
Пару лет назад это было бы очень полезно. =)
Тогда кроме PHP ни на чем не говорил.
на автора посмотрите :)
просто я решил вуступление на хабре с этой статьи начать
Мне кажется решение предложенное автором заслуживает внимание как минимум за то, что оно работает.

Я бы только под 7z это завернул (если там есть запуск файла после распаковки, надо проверить :) ), или под что-нибудь другое не требующее денег :) RAR не айс как по мне :)
Надеюсь все понимают, что PHP-код в машинные команды не переводится, а получившийся экзешник, это упакованный интерпретатор и байт-код сценария?
"Roadsend PHP is a free, open source implementation of the PHP language. It includes a compiler that produces native binaries (no interpreter required)."
PHP я люблю, и даже год назад на PHP 5.1.? пробовал написать OpenGL приложение с помощью своего же модуля к GLFW. По началу все получалось, но потом заглянув в диспетчер задач и увидев как PHP медленно, но верно пожирает память, не высвобождая ресурсы, отказался от этой затеи. unset(..) не помогал, да и что это за дело, когда в конце каждой функции надо делать unset'ы. Возможно в PHP 5.2 с этим уже намного лучше или я упустил включение в настройках какого-то параметра.
Фанатам осталось сделать модуль к графическому движку (Ogre, Irrlicht и пр.) и тогда будет у нас отличный боекомплект для разработки игр :)
Хм, в интернете можно легко найти исходники другого модуля GLUT - можете опробовать на нем и убедиться сами.
UFO landed and left these words here
К чему вы это говорите в данной теме?
Очередное начало холивара в стиле, "а вот я слышал от знакомого?"
По этим словам единственное что можно заключить — ваш знакомый, э..., очень сильно начинающий, так сказать, в PHP.
А где же int main(void) {} ?
Шутка :-D

На самом деле полезно, давно хотел попробовать, а теперь даже гуглить не надо. Спасибо!
int main(int argc, char **argv){} и это не шутка!
шутка :)
Я конечно видел php-gtk. Но чтоб на винде. Это жесткая жесть ребята…
ага. это мегажесть. теперь буду пробовать создавать окошки на HTML =D
Откройте для себя XUL и HTA :)
да, о таком я даже не думал, большое спасибо за информацию, сейчас буду экспереминтировать!
видимо прилетало НЛО и ставило букву "l" во время написания статьи ;)
А, ну если так, то можно не исправлять. НЛО знает об истинных именах лучше нас :)
А какой размер то вышел у бинарников? а то не напиано, а жаль.
500 килобайт :) это уже жатый UPX. Для тех кому "дык это же афигеть как много" - читаем OUTRO :)
Спасибо за статью.
Есть некоторые мелкие вещи реализованиые на пхп, и лениво их переписывать на чем-то еще.
Может пригодится в условиях отсутствия инета и соответственно невозможности использовать залитый на хостинг легкий скрипт и нежелание ставить пхп-апач на машину. А поверьте такое нередко бывает. Бум пользоваться..
Во имя Патрика! Что за маразм?
Я читал OUTRO, но Вы можете мне объяснить, где ЭТО может действительно понадобиться?
ЭТО может понадобится тем кто вот нифига не смыслит ни в чём кроме PHP, не хочет / не имеет времени изучить другой язык программирования, но безумно хочет выйти за пределы браузер и написать оконное приложение. вот так

хотя печёнкой чую, что ответ Вас не удовлетворит ))
Да, да. Что люди не придумают, лишь бы не знать Java, которая не только JSP, но и консольная, и серверная, и 3D, и... платформо-независима. :)
вы дорогой, очень похожи на любителя, забивать гвозди микроскопами. :)
Java это не панацея.. Да и учить ее для парочки простеньких скриптов, на мой взгляд, весьма бессмысленно.
По-моему очень полезно когда надо быстро сделать что-то банальное, а скорость и объемы не важны.
Офигеть.

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

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

Не правда ли похоже на онанизм?
нет, не похоже. Онанизм не дает результата, PHP - дает.
оба сообщения написаны одним и тем же троллем... уж больно синхронно регистрируетесь и пишите :/
Да, с логикой тоже все плохо :)
это Иркутск так плохо влияет? А, товарисчь эксперт, с неадекватной самооценкой и с поломаным всеми кому не лень секбуном :))))
да у тя просто не всё в порядке, иначе какой смысл гадить без причин и инкогнито?
Офигенно, ребята, просто офигенно. :)

Свалился со стула и долго приходил в себя. Большой плюс автору за научный подход, большой плюс тому, кто это сюда закинул, за то, что он это сделал. Утро начинается с веселого, что называется. :) Ждём статей "Программирование библиотек для gcpp на Ms Visual Basic", и "Написание Windows-приложений средставами языка PL/M"... Спасибо, автору респект! :)
Судя по полетевшим минусам в карму, кажется, моей доброй иронии не оценили... о_О
блин, я поражаюсь некоторым людям. Русским языком интро и аутро написано вроде, а всё равно мало - обязательно нужно что-то ляпнуть. Разметил я и автор я, надеюсь тебя это успокоит и будет тебе совсем хорошо!
Вы меня совершенно не поняли. Я внимательно прочитал и интро и аутро, и прекрасно понял, зачем этот пост был написан. Наоборот, я высказался в том духе, что мне очень понравилось, я понимаю, что день был тяжелый, но вы прочтите повнимательнее. :) ПыСы: при всём уважении, мы с вами на брудершафт не пили... :)
Уберите это из веб-разработки в блог РНР. Или в юмор :)
Как мой комментарий попал на самый верх?!!!!!!!!!!!!!
Кто-то считает написание консолек и окошек на РНР веб-разработкой?
и что, данный exe легко переносится на машину без PHP?
забавно, но это именно то, от чего просил воздержаться сам автор РНР :)
Если не изменяет память — первая же заповедь разработчика на РНР звучит примерно так:
«не надо пихать РНР куда ни попадя, он предназначен ТОЛЬКО для веб-страниц»

Но пример интересный, безусловно :)
спасибо
Only those users with full accounts are able to leave comments. Log in, please.