02.04.2010, 14:46
|
|
Профессор
|
|
Регистрация: 15.12.2009
Сообщений: 742
|
|
Определение минимальной версии php файла
Такая вот задача. Кто-то сталкивался с программами или скриптами, которые могли бы взять исходник кода на php и определить минимальную версию php в котором этот файл будет корректно работать?
Простейшим из вариантов мне видется такое решение: собрать все функции, классы и константы и задать для них версию в которой они появились. пройдясь по ним с поиском в исходнике определять минимум...
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт
|
|
04.04.2010, 12:13
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
да уж, задачка в твоем стиле а что делать с функциями, поведение которых изменилось?
|
|
04.04.2010, 12:24
|
|
Профессор
|
|
Регистрация: 15.12.2009
Сообщений: 742
|
|
Сообщение от PeaceCoder
|
да уж, задачка в твоем стиле
|
Да просто лень следить за функциями и т.п. которые применяются в модуле. А так пишешь модуль незадцмываясь, том хлоп и узнал минимальную версию пхп и указал в требованиях...
Сообщение от x-yuri
|
а что делать с функциями, поведение которых изменилось
|
Обычно и версия должна меняться...
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт
|
|
05.04.2010, 13:00
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Сообщение от PeaceCoder
|
Обычно и версия должна меняться...
|
да, но как ты определишь нужную версию в данном случае? Например, preg_match.
Цитата:
|
5.2.2 Named subpatterns now accept the syntax (?<name>) and (?'name') as well as (?P<name>). Previous versions accepted only (?P<name>).
|
будем парсить регулярное выражение? А если оно передается через переменную? Напишем мини php-интерпретатор? Да и вообще, в идеале нужно перебрать все пути выполнения программы, чтобы узнать какие значения может принимать эта переменная. Хотя можно, конечно, ограничиться простейшими случаями
|
|
05.04.2010, 14:05
|
|
Матрос
|
|
Регистрация: 04.04.2008
Сообщений: 6,246
|
|
Сообщение от PeaceCoder
|
А так пишешь модуль незадцмываясь
|
вот из-за такого подхода, PHP и называют незаслуженно быдлокодерским языком.
|
|
05.04.2010, 15:43
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
почему? Я считаю, вполне заслуженно. Простой, популярный, используется толпой народа, "разной степени осведомленности". Но это ведь не значит, что на нем только быдлокод писать можно
а конкретное желание PeaceCoder (а не выдранный из контекста отрывок) вполне имеет место быть, но стоит ли игра свеч?
|
|
05.04.2010, 20:32
|
|
Профессор
|
|
Регистрация: 15.12.2009
Сообщений: 742
|
|
Сообщение от x-yuri
|
да, но как ты определишь нужную версию в данном случае?
|
Это уже тонкости, и за этим уже по крайней мере надо следить программисту. Я же задался вопросом узнать версию пхп для того что бы скрипт вообще работал а не вылетал с крит ошибкой типо такой функции нет или синтаксис не поддерживается или еще что.
Да не спорю тут по любому прийдется писать мини парсер... вот и задался вопросом, существуют ли уже подобные?
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт
|
|
05.04.2010, 23:59
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
ну в общем, не все проблемы можно будет обнаружить, можно будет разве что пытаться решать их по мере возникновения
По поводу парсера... ну есть один, на C написан ну и tokenizer есть
|
|
11.04.2010, 23:30
|
|
Модератор Всея Форума
|
|
Регистрация: 14.05.2009
Сообщений: 4,021
|
|
PHP есть шаблонизатор имхо...
Так что под него мало чего серьёзного можно придумать...
|
|
11.04.2010, 23:46
|
|
Матрос
|
|
Регистрация: 04.04.2008
Сообщений: 6,246
|
|
B~Vladi,
ну, пожалуй это твое ИМХО
для PHP есть множество библиотек для самых разнообразных нужд, что позволяет написать на нем достаточно много интересных вещей, использующих не только его шаблонизаторские функции, но и даже не связанных напрямую с веб-разработкой
я видел на PHP реализацию разных "неPHP"-шных прог:
аналог Total Comander-а(без веб-сервера, на GTK)
клиенты DC, torrent
и еще много чего можно на нем написать
пускай даже кто-то скажет, что он не для этого создан, но он на это способен, и ничто не мешает его для этого применять
|
|
|
|