PHP での関数から返される配列へのアクセス
指定した場所に基づいてコードを挿入するテンプレート エンジンがあるシナリオを考えてみましょう。特定の条件をテストするために、次の関数を作成しました。
myfunction() { return '($this->data["a"]["b"] ? true : false)'; }
ただし、$this->data のプライベートな性質により、特定のコンテキストからアクセスできなくなるという課題があります。
これを解決するには、通常 getData() が使用されますが、この場合は機能しません。次のアプローチも失敗します。
$this->getData()['a']['b']
さらに、値を変数に代入しても、実行可能な解決策は得られません。
解決策
PHP 5.4 以降では、直接的なアプローチが提供されます:
getSomeArray()[2]
PHP の場合5.3 以前では、一時変数を使用できます。
$temp = getSomeArray(); $temp[2]
このメソッドを使用すると、配列のプライベートな性質による制限を受けることなく、関数によって返される配列要素にアクセスできます。
以上がPHP で関数によって返される配列要素にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。