Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Formatowanie XML przy zapisie
Forum PHP.pl > Forum > XML, AJAX > XML
warka81
Czy ktos moze wie co zrobic, zeby po zapisaniu pliku standardowymi funkcjami domxml-a $dom->dump_file("plik.xml", false, false); tekst pojawiający się po owtorzeniu pliku w zwyklym edytorze tekstowym, np notatniku, byl poprawnie sformatowany??
Mam na mysli, ze jesli mam dokument utworzony i sformatowany (z wcieciami itp) a potem go otwieram, dodaje jakies nowe dane i zapisuje, zeby po tych operacjach caly dokument byl nadal "dobrze" sformatowany.
Domyslenie $dom->dump_file(...) zapisuje wszystko w jednym ciagu. Po otwarciu dokumentu w przegladarce jest dobrze wyswietlane, ale poza tym wszystko jest w jednym ciagu.
NuLL
  1. <?php
  2.  
  3. //...
  4. $dom->formatOutput=true;
  5. //...
  6.  
  7. ?>
warka81
Cytat(NuLL @ 2005-09-20 10:21:24)
  1. <?php
  2.  
  3. //...
  4. $dom->formatOutput=true;
  5. //...
  6.  
  7. ?>

Hmmmm
No w sumie to mi nic nie dalo, dalej wszystko jest w jednym ciągu w pliku żródłowym;/
A poza tym jeszcze jedno - jak można ustawić kodowanie przy zapisie? Otwierany dokument ma encoding="iso-8859-2", sprawdzając jego wlasciwosci jako obiektu kodoowanie jest bez zmian. Natomiast przy probie zapisu jakiegoś elementu zawierającymi polskie znaki wyawala mi komunikat błędu:
"dump_file(): output conversion failed due to conv error (...) dump_file(): encoder error in ..."
Sh4dow
troche to dziwne, ale jesli server stoi na linuxie to mozesz zrobic tak
  1. <?php
  2. system('xmllint --format plik.xml -o sformatowany_plik.xml');
  3. ?>

No oczywiscie plik musi byc poprzawnym dokumentem xml oraz server musi miec zainstalowana paczuszke xml-utils albo libxml-utils, niepamietam dokladnie. Inny sposob to napisac parasererk ktory wczyta dane do tablicy a pozniej wygeneruje pliczek ladnie sformatowany. Niestety nie posiadam juz tej zabawki zginela w pozarze dysku Rkingsmiley.png
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.