-1

関数呼び出しから PHP の関数から返された配列の特定の要素にアクセスする方法はありますか? getMostRecentPost()呼び出された関数があり、それが配列を返すとしましょう。私はこのようなことができるようにしたい:

echo getMostRecentPost()['title'];

それはうまくいきません。ただし、他の言語ではこの種の構文が許可されているようです。今、私の解決策はこれを行うことです:

$mostRecentPost = getMostRecentPost();
echo $mostRecentPost['title'];

変数の宣言を省略できるショートカットはありますか? 構文が間違っていますか?

4

3 に答える 3

1

これは、 PHP 5.4 で可能です。

PHP 5.4 以降では、関数またはメソッド呼び出しの結果を直接配列逆参照することが可能です。以前は、一時変数を使用することしかできませんでした。

php.net の例:

function getArray() {
    return array(1, 2, 3);
}

// on PHP 5.4
$secondElement = getArray()[1];

より詳しい情報:

于 2012-05-30T19:09:55.110 に答える
0

いいえ、オブジェクトを使用することはできます。getMostRecentPost() がオブジェクトを返した場合、行くことができます

echo getMostRecentPost()->title;
于 2012-05-30T19:09:39.723 に答える
0

これは、php 5.4 の新機能です。

function arr(){return [5];}
echo arr()[0];

http://codepad.viper-7.com/z6xPrL

于 2012-05-30T19:14:44.137 に答える