Комментарии 45
не прошло и года :)
НЛО прилетело и опубликовало эту надпись здесь
Как сказать, тут аж три «но»
1.Использование коротких тегов является плохой практикой и их можно отключить (даже нечаянно)
2.В PHP6 все короткие теги будут удалены.
3.Он не делает никакого HTML-кодирования.
1.Использование коротких тегов является плохой практикой и их можно отключить (даже нечаянно)
2.В PHP6 все короткие теги будут удалены.
3.Он не делает никакого HTML-кодирования.
> В PHP6 все короткие теги будут удалены.
А можно пруф? Вроде как только ASP-like-тэги собирались убрать.
А можно пруф? Вроде как только ASP-like-тэги собирались убрать.
1. Ложь.
2. Ложь.
Возможно по пункту 2 вы имеете ввиду asp-теги, но снова ложь: их тоже не уберут. Хотя хотели убрать. Но передумали.
2. Ложь.
Возможно по пункту 2 вы имеете ввиду asp-теги, но снова ложь: их тоже не уберут. Хотя хотели убрать. Но передумали.
1.Я знаю о чем говорю, я разрабатываю на php, короткие теги <? считаются дурным тоном, не нужно строить для себя иллюзий «мне нравится, значит можно».Zend Coding Standard
2.PHP6 порос мхом, столько слухов о нем, что следить нет смысла, все равно релиза нет и когда будет не известно
PHP-код должен всегда обрамлятся полными PHP-тегами:
<?php
?>
Короткие теги не допустимы.
2.PHP6 порос мхом, столько слухов о нем, что следить нет смысла, все равно релиза нет и когда будет не известно
вы не поняли чем отличается <%: %> от <%= %>
а <%= %> было еще в ASP
а <%= %> было еще в ASP
НЛО прилетело и опубликовало эту надпись здесь
Статья для Хабра, Microsoft way. Тьфу.
Конечно, когда в python или ruby придумают новую фичу, никто об этом рассказывать не будет. Вообще зачем разработчикам рассказывать, что нового в продуктах? В статье даже никто не говорил «уникальная функция», я бы на вашем месте просто подумал прежде, чем писать. Здесь не фанаты собрались МС, а разработчики, в отличии от вас, фаната линукса
Я за разумный прогресс всего и вся, но зачем код картинками показывать?
Фанаты не фанаты, но
1) очень многие ASP.NET разработчики мало знают что такое HTML, а вы про XSS :)
2) каждый разработчик по-разному выполняет методику, о которой вы расказываете.
3) и главное — все-таки мне лично кажется что с точки зрения ООП все эти кодирования, перекодирования, а еще обработки переносов и другие операции надо выполнять на уровне пропертей(get), хотя каждый пляшет как хочет.
1) очень многие ASP.NET разработчики мало знают что такое HTML, а вы про XSS :)
2) каждый разработчик по-разному выполняет методику, о которой вы расказываете.
3) и главное — все-таки мне лично кажется что с точки зрения ООП все эти кодирования, перекодирования, а еще обработки переносов и другие операции надо выполнять на уровне пропертей(get), хотя каждый пляшет как хочет.
Не перегибайте.
В любой веб разработке в какой-то момент нужно будет посмотреть на html код. И это становится нужным очень скоро, какой бы высокоуровневый инструмент вы бы не использовали.
А то, что Web Forms позволяет быстро собирать стандартные front-end к базе данных, не обращаясь к html — это только плюс.
В любой веб разработке в какой-то момент нужно будет посмотреть на html код. И это становится нужным очень скоро, какой бы высокоуровневый инструмент вы бы не использовали.
А то, что Web Forms позволяет быстро собирать стандартные front-end к базе данных, не обращаясь к html — это только плюс.
Если вы про пункт 1 — то я не перегибаю, а констатирую факт из своего опыта руководителя и то, что я видел в веб-разработке на ASP.NET в немалом кол-ве мест. Большинство аспнет программистов считает себя программистами, которым до уровня HTML опускаться — это же моветон по их мнению :)
Заметьте — я не говорю про всех! а про процентво 80!
Я говорю, про то — что новая конструкция от МС — очередной пример для книг, а в реальности — это как правило зашивают в BL (или у кого как называется).
Вообще п.1 отдельная тема — про квалификацию современных разработчиков, методики пропагандируемые МС, подход бизнеса к разработке и готовым решениям.
ЗЫ: плюс для чего? для быстроразработки и показа макету клиенту — да :) только после таких разработок все работает для двух юзеров, а когда приходит третий — все валится, как это обычно бывает со всем — что написано в книжках у МС в качестве примера.
Заметьте — я не говорю про всех! а про процентво 80!
Я говорю, про то — что новая конструкция от МС — очередной пример для книг, а в реальности — это как правило зашивают в BL (или у кого как называется).
Вообще п.1 отдельная тема — про квалификацию современных разработчиков, методики пропагандируемые МС, подход бизнеса к разработке и готовым решениям.
ЗЫ: плюс для чего? для быстроразработки и показа макету клиенту — да :) только после таких разработок все работает для двух юзеров, а когда приходит третий — все валится, как это обычно бывает со всем — что написано в книжках у МС в качестве примера.
> Конечно, когда в python или ruby придумают новую фичу, никто об этом рассказывать не будет.
А как же OpenNet?
А как же OpenNet?
Может кто объяснить, чем отличается <%= %> от <% %>?
<%= "Hello World!" %> — это <% Response.Write("Hello World!") %>
Т.е. с "=" это специализированный тег для текста, как ":" для кодирования?
<%= varOrMethod %> — что-то типа препрцессора, вставляет в респонз значение переменной или значение, которе вернёт метод
<% %> — можно сипользовать, если есть нужна смещать html-код и логику. Например:
а есть еще и <%# %> :-)
<% %> — можно сипользовать, если есть нужна смещать html-код и логику. Например:
<% if (someBoolFlag) {%> someBoolFlag = <b>True</b> <%} else {%> someBoolFlag = <b>False</b> <%}%>
а есть еще и <%# %> :-)
костыли плодятся и размножаются х)
Приходит Мулла Насреддин к соседу и просит у него кастрюлю:
— Слушай, сосед, у меня гости завтра придут, дай взаймы кастрюлю побольше на пару дней.
Сосед дал. Через несколько дней Мулла Насреддин приносит соседу его большую кастрюлю и еще вдобавок маленькую:
— Вот, твоя кастрюля родила за это время!
Сосед удивился сильно, но ничего не сказал, взял и маленькую кастрюлю. Проходит время, и Мулла Насреддин снова приходит к соседу:
— Дай еще раз кастрюлю, снова гости будут.
Сосед пошел, достал свою самую большую кастрюлю и дал ее Мулле.
Проходит несколько дней, Мулла не появляется. Сосед думает: «Большая кастрюля, долго рожает, наверное…» Проходит еще неделя. Забеспокоился сосед и пошел сам к Мулле.
— Мулла, послушай, дай мою кастрюлю, а то у меня тоже гости на днях будут.
Мулла отвечает:
— А ее нет… Она умерла.
— Как умерла?! Как кастрюля может умереть?! – опешил сосед.
А Мулла как ни в чем ни бывало:
— Рожать может, а умереть не может?!
— Слушай, сосед, у меня гости завтра придут, дай взаймы кастрюлю побольше на пару дней.
Сосед дал. Через несколько дней Мулла Насреддин приносит соседу его большую кастрюлю и еще вдобавок маленькую:
— Вот, твоя кастрюля родила за это время!
Сосед удивился сильно, но ничего не сказал, взял и маленькую кастрюлю. Проходит время, и Мулла Насреддин снова приходит к соседу:
— Дай еще раз кастрюлю, снова гости будут.
Сосед пошел, достал свою самую большую кастрюлю и дал ее Мулле.
Проходит несколько дней, Мулла не появляется. Сосед думает: «Большая кастрюля, долго рожает, наверное…» Проходит еще неделя. Забеспокоился сосед и пошел сам к Мулле.
— Мулла, послушай, дай мою кастрюлю, а то у меня тоже гости на днях будут.
Мулла отвечает:
— А ее нет… Она умерла.
— Как умерла?! Как кастрюля может умереть?! – опешил сосед.
А Мулла как ни в чем ни бывало:
— Рожать может, а умереть не может?!
да когда ж они наконец помрут-то? х)
Никогда, потому что это не костыли, а удобный и лаконичный синтаксис.
о да, очень лаконичный х))
<a href="<%: model.link %>">click me</a>
<a href="<%: model.link %>">click me</a>
Ссылки должны генерироваться html-хелперами, а не руками
з.ы. в php никто еще от такого не умер
з.ы. в php никто еще от такого не умер
Вы можете записать это еще короче, не потеряв при этом гибкость?
В нашем шаблонизаторе эта фича существует с 2-го мая 2001 года. Между прочим, с моей точки зрения это достаточно критическая фича: игнорирование лени разработчиков ведёт к тому, что почти на всех сайтах кучи XSS-дыр. Явно вызывать функции экранирования для каждой выводимой в шаблоне переменной — лениво всем. С другой стороны, использование разных placeholder-ов для вывода экранированных и не экранированных данных сильно облегчает аудит кода при поиске тех же XSS.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Новый синтаксис <%: %> для HTML-кодирования в ASP.NET 4 и ASP.NET MVC 2