[PHP-users 26922] <?xml version="1.0"?>を出力させない方法

fan charlie fan_charlie @ hotmail.com
2005年 9月 18日 (日) 03:17:53 JST


チャーリーと申します。

動画配信再生リストの生成スクリプトを下記のように書いています:
ファイル名:test.php
1.<?php
2.        $str = '<?wsx version="1.0"?>';
3.        $str .= '<smil></smil>';
4.        $dom = new domDocument();
5.        $dom->formatOutput = true;
6.        $dom->loadXML($str);
7.        $root = $dom->documentElement;
8.
9.        $seq= new domElement('seq');
10.        $root->appendChild($seq);
11.
12.        for($i=0;$i<3;$i++){
13.                $media = new domElement('media');
14.                $seq->appendChild($media);
15.                $media->setAttribute("noSkip","true");
16.                $media->setAttribute("src","media_path".$i);
17.                $media->setAttribute("mediaName","mediaName".$i);
18.
19.                $clientData = new domElement('clientData');
20.                $media->appendChild($clientData);
21.                $clientData->setAttribute("title","TITLE".$i);
22.        }
23.        echo $dom->saveXML();
24.?>

上記のソースをブラウザ(IE6)からみると
何も表示されませんが、ブラウザのソースを開いてみると下記のようになっている:


<?xml version="1.0"?>
<?wsx version="1.0"?>
<smil>
  <seq>
    <media noSkip="true" src="media_path0" mediaName="mediaName0">
      <clientData title="TITLE0"/>
    </media>
    <media noSkip="true" src="media_path1" mediaName="mediaName1">
      <clientData title="TITLE1"/>
    </media>
    <media noSkip="true" src="media_path2" mediaName="mediaName2">
      <clientData title="TITLE2"/>
    </media>
  </seq>
</smil>

ソースの1行目の<?xml version="1.0"?>を出力させない方法はあるでしょうか?
スクリプトの23行目echo $dom->saveXML();に宣言文を表示しない引数はあるで
しょうか?
またスクリプトの6行目   $dom->loadXML($str);の使い方は間違った?
よろしくお願いいたします

環境は:
Linux RedHat8.0
Apache2.0.54
PHP5.0.4
libxml2.6.22




PHP-users メーリングリストの案内