2016-07-06 7 views
0

XMLをMYSQL DBに解析しようとしています。しかし、私はエラーが表示されます:SimpleXMLElement :: __ construct():エンティティ:行68:パーサーエラー

Warning: SimpleXMLElement::__construct(): Entity: line 68: parser error : Opening and ending tag mismatch: hits line 3 and events in ******* on line 72

私は何かを間違えたと思うが、私はそれを見つけることができないと思う。これは初めてのXML作業です。ここで

$xml = new SimpleXMLElement($xmlstr); 
echo 'single value: <br />'; 
echo $xml->events->hits->hits->hits->hits[0]->_id; // get single value 

$ xmlstrである:ここで

は私のコードです

$xmlstr = <<<XML 
<events> 
    <hits>200</hits> 
    <hits> 
     <_shards> 
     <failed>0</failed> 
     <successful>5</successful> 
     <total>5</total> 
     </_shards> 
     <hits> 
     <hits> 
      <hits> 
       <_id>2307</_id> 
       <_index>events</_index> 
       <_score null="true" /> 
       <_type>event</_type> 
       <fields> 
        <description> 
        <hits>Bla</hits> 
        </description> 
        <genres> 
        <hits> 
         <hits>Classic</hits> 
         <hits>Rock</hits> 
         <hits>Pop</hits> 
        </hits> 
        </genres> 
        <header> 
        <hits>https://media.hugo.events/events/2307/56820e2ac5fa1eecf115fc8aaf250e9c.jpg</hits> 
        </header> 
        <logo> 
        <hits>https://media.hugo.events/events/2307/240e3f379e5996ac4c5e20b9c874cc6f.png</hits> 
        </logo> 
        <name> 
        <hits>Cultureel Festival Baarn 2016</hits> 
        </name> 
        <start> 
        <hits>2016-09-02T12:00:00+0000</hits> 
        </start> 
        <venue.city> 
        <hits>Baarn</hits> 
        </venue.city> 
        <venue.country> 
        <hits>Nederland</hits> 
        </venue.country> 
        <venue.location> 
        <hits>5.2906804</hits> 
        <hits>52.210896</hits> 
        </venue.location> 
       </fields> 
       <sort> 
        <hits>1472817600000</hits> 
       </sort> 
      </hits> 
     </hits> 
    </hits> 
</events> 
XML; 

は私が解析したい部分を指し示すと間違って何かをしましたか?

誰かが私を助けてくれることを願っています。

ありがとうございます。

+0

エラーメッセージに説明されているとおり、XMLは無効です。 (あなたは4 ''タグを起動し、3だけ閉じる) –

答えて

0

こんにちは、あなたのxmlは無効です。私もそれをチェックして、最後に欠けている終了</hits>を見つけました。検証ツールの使用:https://validator.w3.org/check 先頭に<?xml version="1.0"?>を追加してみてください。

+0

エラーを取り除いたが、別のエラーが出る: 注意:行の********にある非オブジェクトのプロパティを取得しようとしている64 –

+0

行64は最後の行です –

+0

ねえ、あなたの最初のが問題を起こしています。この$ xml-> events-> hits [1] - > hits-> hits-> hits-> idを試してください。 – raviolican

関連する問題