読者です 読者をやめる 読者になる 読者になる

ほげほげ(仮)

仮死状態

PHPでハイフン付きタグのXMLを読み込むときの注意

PHP


ちょっとPHPで何か作ってみようと思い立ち、XMLを読み込む処理で早速ハマった\(^o^)/
(※オレはPHPど素人です。)


例えば、次のようなxmlがある場合

<?xml version='1.0' encoding="UTF-8"?>
<sample>
    <test-test>テスト</test-test>
</sample>


これをsimplexml_load_fileで取得して、表示するために次のように書いてみました。

<?php
$xml = simplexml_load_file("test.xml"); 
echo $xml->test-test;
?>


特にエラーとかではなく、画面には「0」とだけ表示されました。


何故かちゃんと動かないで、色々試してみるとタグのハイフンが問題だったみたいです。


ハイフンがある場合は次のように書きます。

<?php
$xml = simplexml_load_file("test.xml"); 
echo $xml->{'test-test'};
?>

{''} で囲んでやるとうまくいきました。


いつもこういうのにハマってるオレって・・・(´Д⊂グスン