| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: X технологии > форматирование вывода |
| Автор: Diesel Draft 10.8.2007, 12:21 |
| Использую XSLTProcessor и метод transformToDoc(). После этого вывожу через saveXML() или saveHtml(). На выходе у меня уже шаблон без формация. Как можно это отключить? |
| Автор: Golda 11.8.2007, 13:59 | ||||
| по идее, этот вопрос уже относится не к XSLTProcessor, а к DOMDocument объекту, который получился в результате transformToDoc(). Попробуйте использовать в XSL
и присвоить явно соответствующее свойство документу
|
| Автор: Diesel Draft 11.8.2007, 21:52 |
| Не помогло |
| Автор: Golda 12.8.2007, 08:46 | ||||||||
| Попробуйте, что у Вас выдает такой пример test.xml
test.xsl
test.php
можете также явно указать
А еще проще, если использовать не transformToDoc(), а transformToXML(). Тогда достаточно указаний в XSL, никаких дополнительных настроек не нужно |
| Автор: Severyanin 13.8.2007, 07:16 |
| А не могли бы Вы дать пару ссылок на информацию по процессору? А то я никак не могу найти удобный инструмент |
| Автор: Golda 13.8.2007, 08:30 |
| http://www.php.net/manual/en/ref.xsl.php |
| Автор: Severyanin 13.8.2007, 08:39 |
| Спасибо, попробую разобраться Добавлено через 3 минуты и 47 секунд Эх, не то. Но все равно спасибо |
| Автор: Diesel Draft 13.8.2007, 10:24 |
| Через пол чеса попробую. |
| Автор: Diesel Draft 13.8.2007, 12:56 |
| Не помогло. Может то саблотрон поставить и под него перерубить? Не буде у меня проблем з хостингом? |
| Автор: Golda 13.8.2007, 13:25 | ||
| Что именно не помогло? Вы попробовали вариант: в <xsl:output> indent="no" <xsl:strip-space elements="*" /> в php
? Мой пример из пердыдущего поста выдает xml с лишними whitespaces или без? Добавлено через 10 минут и 42 секунды Я не пробовала ставить sablotron с PHP5. предполагаю, что могут быть проблемы, поскольку zend предлагает использовать XSLTProcessor и не поддерживает PHP5 + sablotron. Cоответстсвенно, даже если прямых нестыковок не будет, отлажена работа там не очень хорошо |
| Автор: Diesel Draft 13.8.2007, 13:41 |
| без Все вышесказанное пробовал |
| Автор: Golda 13.8.2007, 13:58 |
| А, ну значит, я просто неправильно поняла, что Вы хотите. Я думала, Вам нужно получить вывод без лишних whitespaces, а Вы хотите как раз сохранить форматирование. Прошу прощения, что запутала дело. Тогда все с точностью до наоборот. в <xsl:output> indent="yes" Если пробелы внутри тегов должны сохраняться, то вместо <xsl:strip-space> - убирайте, а если для большинства тегов он используется, то для тех, где нужно сохранить <xsl:preserve-space>. Для transformToXML() - все, а для transformToDoc() для получившегося DOMDocument указываем $dom->formatOutput = true; Надеюсь, на этот раз я правильно поняла Вашу идею |
| Автор: Diesel Draft 13.8.2007, 14:07 |
| ура-а-а-а-а-а Спасибо. Как то даже смешно получилось С меня плюсик, заслужено |
| Автор: Golda 13.8.2007, 16:52 |
| На здоровье Бывает и так. Еще раз прошу прощения за путаницу, ну да все хорошо, что хорошо кончается |
| Автор: Diesel Draft 13.8.2007, 16:54 |
| Да ты извини. У меня з русским проблемы. Если б не гугл проверка я в такие еще минусы полез (смотри мою репу |
| Автор: leshafirs 13.4.2011, 17:18 | ||||||
| доброе время суток не стал создавать новый пост решил написать в этом так как проблема похожая=) я пишу сайт преобразовываю xml с помощью xsl и обрабатываю все это в php
quotes.xsl содержит
но на выходе я получаю где у меня идет echo $result->saveXML(); лишние
как убрать <?xml version="1.0" encoding="utf-8" standalone="yes"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ""> ?????? |