Zend_Config_Xmlでは、コンフィグファイルを読み込むと、XMLの要素名をプロパティーとしてアクセスできるようになります。 test_config.xml
< ?xml version="1.0" ?>
123457
というデータがあったら
require_once 'Zend/Config/Xml.php';
$config = new Zend_Config_Xml('./test_config.xml');
echo $config->data->text;
として読み出せるのですが、xmlの要素名に-(ハイフン)を使うと、PHP(というか大体のプログラム言語か?)ではプロパティー名に-を使えないので、上記のようにアクセスできなくなってしまいます。
< ?xml version\="1.0" ?>
<testconfig\>
<data\>
<text\>123457</text\>
<text-size\>12px</text-size\>
</data\>
</testconfig\>
require_once 'Zend/Config/Xml.php';
$config = new Zend_Config_Xml('./test_config.xml');
// アクセスできない
echo $config->data->text-size; // 0 PHP Noticeがでる
// アクセスできるけど面倒くさい
echo $config->data->{"text-size"}; // 12px
$text_size = "text-size";
echo $config->data->$text\_size; // 12px
ハイフン使わないでアンダーバー使えという話ですが、なんとなく気持ち悪いです。このためにZend_Config.phpやZend_Config_Xml.phpをいじるのも微妙です。 ちょっとした愚痴でした。