[PHP-users 29259] Re: メソッド名の [-] ハイフン

monry monry84 @ gmail.com
2006年 5月 19日 (金) 10:17:14 JST


森です。

> ハイフンがついたメソッド名を取得するにはどの様に記載すれ
> ば良いのでしょうか。
(中略)
>取得不可能
>echo$row->test-data1;

上記ソースを見る限り、 $row というオブジェクトのメンバを参照している
ように見受けられますので、「ハイフンが含まれるメンバを参照するには…」
という解釈が正しいという前提の上で返答させていただきます。

少々冗長になってしまいますが、 get_object_vars() 関数を用いればメンバを
連想配列で取得することが可能となります。
当方にSimpleXML関数を利用できる環境が無いため、憶測となってしまいますが、

[before]

echo $row->test-data1;

[after]

$vars = get_object_vars($row);
echo $vars['test-data1'];

などとすれば多少強引ではありますが、出来るのではないかと思われます。

まだ試行されていないようでしたら、ご検討くださいませ。

-- 
wrriten by T.Mori


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