tag:blogger.com,1999:blog-1100066510131209878.post8074735737549440284..comments2023-07-13T06:33:44.340+01:00Comments on Из Атланты в Лондон: CodeIgniter и генерация XMLValikhttp://www.blogger.com/profile/16446746311417734580noreply@blogger.comBlogger5125tag:blogger.com,1999:blog-1100066510131209878.post-44397793023433456742011-10-21T15:09:49.837+01:002011-10-21T15:09:49.837+01:00Попробовал - нет, так не получается. Даже если в н...Попробовал - нет, так не получается. Даже если в настройках PHP запретить short tags (чтобы решить вопрос с открывающим тэгом, который может быть как <?php , так и просто <?), то всё равно остается проблема с закрывающим.<br /><br />Т.е. в принципе можно обойтись только одно конкатенацией вместо двух, но только если ты согласен не использовать short tages (а это может сделать шаблон менее читабельным).Valikhttps://www.blogger.com/profile/16446746311417734580noreply@blogger.comtag:blogger.com,1999:blog-1100066510131209878.post-5595902621892957252011-10-21T13:44:12.855+01:002011-10-21T13:44:12.855+01:00А, ну про то, что в Блоггере в комментарий нельзя ...А, ну про то, что в Блоггере в комментарий нельзя никаким образом вставить что-то отдаленно похожее на HTML тэг, я забыл. Мой вопрос про парсер был в том, почему нельзя написать одной строкой echo 'бла-бла', где бла-бла и есть декларация сразу целиком.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-1100066510131209878.post-76464444650381828512011-10-21T13:38:48.732+01:002011-10-21T13:38:48.732+01:00Насчет "необязательна" я, наверное, пого...Насчет "необязательна" я, наверное, погорячился. Спецификация про нее говорит "SHOULD contain", а это значит "that there may exist valid reasons in particular circumstances to ignore a particular item". То есть как бы и необязательна, но лучше, чтобы была.<br />А что, правда парсер PHP такой тупой, что не понимает строку ' ?> и приходится городить нечитаемую конкатенацию?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-1100066510131209878.post-78853289956388348402011-10-21T11:24:47.825+01:002011-10-21T11:24:47.825+01:00Наверное, я непонятно написал. Я меняю это в шабло...Наверное, я непонятно написал. Я меняю это в шаблоне будущего файла XML, а не в каком-то XML-файле. Шаблон сам по себе - это PHP-файл. Конечно, он не является валидным XML. Вот пример для генерации XML sitemap:<br /><br /><?php echo '<' . '?' ?>xml version="1.0" encoding="UTF-8"<?php echo '?' . '>' ?><br /><br /><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><br /><?php foreach ($urlset as $url):?><br /><url><br /> <loc><?=$url->loc?></loc><br /> <lastmod><?=$url->lastmod?></lastmod><br /></url><?php endforeach;?><br /> <br /></urlset><br /><br />А то, что декларация необязательна, я, честно говоря, не знал. Ну, т.е. я знал, что и без неё иногда работает, но думал, что это нарушение стандарта.Valikhttps://www.blogger.com/profile/16446746311417734580noreply@blogger.comtag:blogger.com,1999:blog-1100066510131209878.post-2859102519951746702011-10-21T11:00:30.096+01:002011-10-21T11:00:30.096+01:00А в чем замес, так сказать? Уж если ты уродуешь XM...А в чем замес, так сказать? Уж если ты уродуешь XML declaration, чтобы "обмануть PHP", то не лучше ли ее (декларацию; не знаю, как по-русски правильно) просто выкинуть? Она, согласна спецификации, опциональна. А так ты делаешь XML невалидным, да еще и совершаешь лишние телодвижения.Anonymousnoreply@blogger.com