ホームページ  >  記事  >  バックエンド開発  >  SimpleXMLでXML処理を行った後にasXML('file.xml')で保存したファイルには書式が設定されていませんか?一行はまるで天上の書のようだ

SimpleXMLでXML処理を行った後にasXML('file.xml')で保存したファイルには書式が設定されていませんか?一行はまるで天上の書のようだ

WBOY
WBOYオリジナル
2016-06-23 14:26:061350ブラウズ

SimpleXML で XML ファイルを構築します。

xml->addChild()

xml->addAttribute()
なんと奇跡です

保存するとき、 xml->asXML('file.xml'); xml ファイルが 1 行で表示されます

あまりにもランダムなので、見てると気が狂いそうです。

行の折り返しやインデントなどを自動的に行うことはできないのでしょうか?


ディスカッションへの返信(解決策)

ないようです。 。 。 。 。唯一の方法は、改行文字を手動で置き換えて追加することです。 。

文を追加します: $xml->formatOutput = true;

文を追加します: $xml->formatOutput = true;

$xml = simplexml_load_string($xmlstring); から始めました。 addAttribute

次に、次のようにフォーマットするには
$xmlDoc->formatOutput = true
$xmlDoc->loadXML($xml->asXML()) ;

$xml_file_save = fopen('filefile.xml',"w");//書き込み用にファイルを開く
fwrite($xml_file_save,$xmlDoc->saveXML()); / ファイルを閉じます

結果は同じで、ファイルには改行やインデントの形式はありません。








それはないようです。 。 。 。 。唯一の方法は、改行文字を手動で置き換えて追加することです。 。

SimpleXml に追加するにはどうすればよいですか?格納された文字列として扱うことはできますか?

手動の Tidy モジュールを参照してください


XML では改行とインデントは無意味です (すでに十分な大きさです)
任意の XML エディタ (ブラウザを含む) を使用して表示できます。取得できるのはフォーマットされたコンテンツだけです

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。