Модераторы: Aliance, skyboy, MoLeX, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> форматирование вывода, как отключить 
:(
    Опции темы
Diesel Draft
Дата 10.8.2007, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



Использую XSLTProcessor и  метод transformToDoc(). После этого вывожу через saveXML() или saveHtml(). На выходе у меня уже шаблон без формация. Как можно это отключить?


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Golda
Дата 11.8.2007, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 5
Всего: 42



по идее, этот вопрос уже относится не к XSLTProcessor, а к DOMDocument объекту, который получился в результате transformToDoc()

Попробуйте использовать в XSL

Код

<xsl:output indent="no"/>


и присвоить явно соответствующее свойство документу

Код

$dom = $proc->transformToDoc($xml);
$dom->formatOutput = false;




--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
Diesel Draft
Дата 11.8.2007, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



Не помогло  smile 


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Golda
Дата 12.8.2007, 08:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 5
Всего: 42



Попробуйте, что у Вас выдает такой пример

test.xml
Код

<?xml version="1.0" encoding="iso-8859-1"?>
<greeting>Hello, world!</greeting>


test.xsl
Код

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="html" version="4.0" encoding="UTF-8" indent="no" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" doctype-system="http://www.w3.org/TR/html4/loose.dtd"/>
    <xsl:strip-space elements="*" />
    
    <xsl:template match="/">
    <html>
    <head>
        <title>Today's greeting</title>
    </head>
    <body>
        <p><xsl:value-of select="greeting"/></p>
    </body>
    </html>
    </xsl:template>
</xsl:stylesheet>


test.php
Код

<?php
$xml = domdocument::load('test.xml');
$xsl = domdocument::load('test.xsl');

$proc = new XsltProcessor();
$xsl = $proc->importStylesheet($xsl);
$dom = $proc->transformToDoc($xml);
$dom->formatOutput = false;

echo $dom->saveXML();
?>


можете также явно указать
Код

echo $dom->saveXML(null, LIBXML_NOBLANKS);


А еще проще, если использовать не transformToDoc(), а transformToXML(). Тогда достаточно указаний в XSL, никаких дополнительных настроек не нужно

Это сообщение отредактировал(а) Golda - 13.8.2007, 08:28


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
Severyanin
Дата 13.8.2007, 07:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 31.7.2007
Где: Россия, Омск

Репутация: нет
Всего: 9



А не могли бы Вы дать пару ссылок на информацию по процессору? А то я никак не могу найти удобный инструмент smile 


--------------------
"Звонким вереском скроются наши следы, и не вспомнят о них. Кто поверит нам, рыцарям павшей звезды из отвергнутых книг? Пусть в узоре времен ни стихов. ни имен, но напомнит забывшим их полуночный крик." Тэм Гринхилл
"Ужели суслик твоего коварства нагадит в плов доверья моего?". Л.Филатов 
PM MAIL WWW ICQ   Вверх
Golda
Дата 13.8.2007, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 5
Всего: 42





--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
Severyanin
Дата 13.8.2007, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 31.7.2007
Где: Россия, Омск

Репутация: нет
Всего: 9



Спасибо, попробую разобраться smile

Добавлено через 3 минуты и 47 секунд
Эх, не то. Но все равно спасибо smile 


--------------------
"Звонким вереском скроются наши следы, и не вспомнят о них. Кто поверит нам, рыцарям павшей звезды из отвергнутых книг? Пусть в узоре времен ни стихов. ни имен, но напомнит забывшим их полуночный крик." Тэм Гринхилл
"Ужели суслик твоего коварства нагадит в плов доверья моего?". Л.Филатов 
PM MAIL WWW ICQ   Вверх
Diesel Draft
Дата 13.8.2007, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



Через пол чеса попробую. 


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Diesel Draft
Дата 13.8.2007, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



Не помогло. Может то саблотрон поставить и под него перерубить? Не буде у меня проблем з хостингом?


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Golda
Дата 13.8.2007, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 5
Всего: 42



Что именно не помогло? Вы попробовали вариант:

в <xsl:output> indent="no" 

<xsl:strip-space elements="*" />

в php

Код

echo $proc->transformToXML$xml);


?

Мой пример из пердыдущего поста выдает xml с лишними whitespaces или без?

Добавлено через 10 минут и 42 секунды
Я не пробовала ставить sablotron с PHP5. предполагаю, что могут быть проблемы, поскольку zend предлагает использовать XSLTProcessor и не поддерживает PHP5 + sablotron. Cоответстсвенно, даже если прямых нестыковок не будет, отлажена работа там не очень хорошо


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
Diesel Draft
Дата 13.8.2007, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



без

Все вышесказанное пробовал


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Golda
Дата 13.8.2007, 13:58 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 5
Всего: 42



А, ну значит, я просто неправильно поняла, что Вы хотите. Я думала, Вам нужно получить вывод без лишних whitespaces, а Вы хотите как раз сохранить форматирование. Прошу прощения, что запутала дело. Тогда все с точностью до наоборот.

в <xsl:output> indent="yes" 

Если пробелы внутри тегов должны сохраняться, то вместо  

<xsl:strip-space> - убирайте, а если для большинства тегов он используется, то для тех, где нужно сохранить <xsl:preserve-space>. Для transformToXML() - все, а для transformToDoc() для получившегося DOMDocument указываем 

$dom->formatOutput = true;

Надеюсь, на этот раз я правильно поняла Вашу идею

Это сообщение отредактировал(а) Golda - 13.8.2007, 13:59


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
Diesel Draft
Дата 13.8.2007, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



ура-а-а-а-а-а  smile 

Спасибо. 

Как то даже смешно получилось smile Сделай так, а нет так, вышло? ну теперь наоборот все  smile 

С меня плюсик, заслужено


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Golda
Дата 13.8.2007, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 5
Всего: 42



На здоровье  smile 

Бывает и так.  Еще раз прошу прощения за путаницу, ну да все хорошо, что хорошо кончается


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
Diesel Draft
Дата 13.8.2007, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



Да ты извини. У меня з русским проблемы. Если б не гугл проверка я в такие еще минусы полез (смотри мою репу  smile ). Но з английским у меня еще хуже.


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: X технологии | Следующая тема »


 




[ Время генерации скрипта: 0.1550 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.