Да, кстати. Мой ответ на парсере можно переписать и на PHP - никто не мешает. Хеш завел, в цикле перебрал (метода menu в PHP нет - а его так не хватает....) ну и вперед.
Все данные, поступающие от пользователя в переменные, считаются помеченными как "грязные". И если программист их специально не преобразует к какому-либо виду, они будут преобразованы. При выводе в html - <> будут переделаны в < и > При выводе в SQL - нет, зато ключевые слова самой SQL будут экранированы (при возврате из SQL - разэкранированы).
Соответственно, sql injection, межсайтовый скриптинг ну и прочие "прелести" идут очень далеко лесом.
> Соответственно, sql injection, межсайтовый скриптинг ну и прочие "прелести" идут очень далеко лесом.
Если отдел пиара студии Артёмия Лебедева называет это уникальной фичей, то я щас уссусь, друзья мои. А ну спеши асиливать "Rails для самых маленьких", а когда асилишь, переходи к "Django: учимся играя".
Ну примерно как RoR, насколько я понимаю. На уровне фреймворка. То есть вы можете написать ^MAIN:pSQL.метод или ^MAIN:pSQL.переменная при условии, что у вас подключен фреймворк SQL.
Ну и, соответственно, все остальные приличествующие случаю фишки. Не думаю, что это круче RoR, но ORM там есть.
> И что, там написано, что питон и руби ацтой, и приведено 20 аргументов в пользу этого?
Что вы. Так пишут только фанатики вроде ананимусов. Нормальные пацаны в таких местах, как /docs/lang/ обычно держат документаци на язык. Однако фанатики предпочитают доку не читать, а "асиливать".
> Ну примерно как RoR, насколько я понимаю. На уровне фреймворка. То есть вы можете написать ^MAIN:pSQL.метод или ^MAIN:pSQL.переменная при условии, что у вас подключен фреймворк SQL.
Django - к сожалению, за неимением официального скринкаста можно посмотреть видео от Turbogears - тоже вполне пристойный фреймворк на Python, создан на основе разных хорошо зарекомендовавших себя Python-технологий (MochiKit - AJAX, Kid - темплейты, CherryPy - сервер, SQLObject - ORM), но в целом по идеологии соответствует тому что есть в Django: http://files.turbogears.org/video/20MinuteWiki2nd.mov
мое впечатление - на Ruby и Python выглядет более понятно, красиво, кратко, выразительно, чем на PHP.
Они, похоже, в каком-то ином мире живут, создатели парсера. Ни про J2EE, ни про RoR, ни про перл с питоном они не слышали. На сайте нашёл только упоминание PHP. Где подробный сравнительный анализ парсера и конкурентов? Где подробный анализ области применения? Не тот уровень у их конторки, чтоб стремглав бросаться переходить на их ПТУшное поделие.
Q: Если есть PHP, то для чего Parser? A: PHP — это язык программирования, требующий соответствующей подготовки. На Parser могут работать далеко не профессиональные программисты.
Перевожу с маркетоложеского на русский: Parser - для тех, кто не асилил даже PHP. Дальше можно не продолжать.
> На Parser могут работать далеко не профессиональные программисты
За это вообще нужно кастрировать.
Дизайнеры язык написали, ёпта. И так квалификация падает и быдлокодеров дохера развелось, так им ещё и плодиться помогают, условия размножения создают.
Выше приводил ссылку на список различных фреймворков для php. И вообще тем кто тестил нужен был MVC фреймвор, и всё. Так что можно было и без Symfony обойтись.
А то взяли Symfony (подзреваю что больше ничего и не знают) и начали тестить (да ещё одно из конкуренитов запускали не из под апапча), а почему именно его х.з. Тест вообще весьма очень странный.
Чем больше, тем круче. А ещё круче, если интервал вообще транслируется во временный объект типа class Interval def initialize a, b @a = a @b = b end def inRange v if v >= @a if v <= @b return true end end return false end end
Ну и соответственно кейс сводился бы к созданию временных объектов и вызову inRange.
Твою мать. Забыл форматирование выбрать.
class Interval
def initialize a, b
@a = a
@b = b
end
def inRange v
if v >= @a
if v <= @b
return true
end
end
return false
end
end
То, что я описал - это автоматический taint. А есть еще и ручной, с четким указанием типа преобразования. Полезная вещь при работе с формами.
Например, установив taint[htmloptimized] на весь код, html код, отдаваемый клиенту, будет оптимизирован по размеру (убраны пробелы и ентеры, заменены часть тегов html и др.). Экономит трафик.
Парсер? Да не смешите меня! Это продукт той конторы, которая с поистине быдлокодерским упорством принципиально забивает на спецификации W3C и клепает ни разу не валидные быдлосайты?
Лебедев постоянно призывает всех забивать на спецификации и стандарты. Дескать, полёт мысли реально креативного куль дезигнера в стандарты не укладывается. Ну и с таким отношением он и его быдлодетище Parser идёт фтоппку.
> Я бы все-таки порекомендовал сходить на раздел документации и почитать в развернутом виде.
Ужо почитал. Синтаксис хуже чем у перла и руби. Глобальное пространство имён забито, как в ПХП. Библиотек ноль. Где Великая Китайская Стена знаете или показать?