1
文字列変数を使用して配列形式を持つオブジェクトプロパティにアクセスしようとしましたが、文字列にインデックス選択が含まれているとアクセスできませんでした。この例を見てみましょう..私が何をしトリングたもの上記のコードは文字列でオブジェクトの配列プロパティにアクセス
try access1: itemNormal
try access2: item1
--- ERROR MESSAGE --
try access3: <-- does not contain anything because of error, my expectation is it will be "item1"
try direct: item1
これはPHPとは不可能であるが返される文字列
$dummy = new stdClass();
$dummy->testNormal = 'itemNormal';
$dummy->testArray = array('item1', 'item2');
$access1 = 'testNormal';
$access2 = 'testArray';
$access3 = 'testArray[0]';
echo 'try access1: ' . $dummy->{$access1} . '<br />';
echo 'try access2: ' . $dummy->{$access2}[0] . '<br />';
echo 'try access3: ' . $dummy->{$access3} . '<br />';
echo 'try direct: ' . $dummy->testArray[0] . '<br />';
のような$ access3を使用することですか?
私は思うが、このアプローチについては忘れてはならない。私はかなりあなたが望むようなより良い解決策があると確信しています – Peter
私はそれが1つの呼び出しで行うことはできません恐れています。 1つの解決策は、[$ dummy - > {<>} {<>} を呼び出す前に文字列を分割することができますが、testArray [0] [1] [2] ... [n]文字列を分割して必要なオブジェクト要素を返す関数を記述しない限り –