2010-11-22 9 views
1

の1つのラインに私は1つのラインに

$arr = Foo::bar(); 
$v = $arr[$i] 

を行う必要がある特殊な状況に遭遇コードの$v = Foo::bar()[$i]は機能しません。

答えて

2

私はそれが次のPHP版のために追加されているとは思うが、それは分でPHPでは不可能だ。ここでは、件名にいくつかのより多くの情報があります:これはあまりにも追加されるために、私は待つことができない

http://schlueters.de/blog/archives/138-Features-in-PHP-trunk-Array-dereferencing.html

+0

ことはできませんか?逆参照はありませんが、実行することは可能です。 – zerkms

+0

私は彼らの例にコメントしていました。 –

0

現在のバージョンのPHPでは、配列の再整理はまだ実装されていません。 PHP 5.4または6.0がリリースされるまで待つ必要があります。

1

どうやってですか?まさにあなたが望んでいたものですか? = P

$v = Foo::barElement(0); 

と...

class Foo 
{ 
    public static function barElement($index) {$t = self::bar(); return $t[$index];} 

    public static function bar...... 
} 
+0

確かに。必要以上にデータを返す理由はありません。 – zerkms

1
$v = reset(Foo::bar()); 
+0

私の場合、実際には連想配列です。 – powerboy

+2

@powerboy:そのため、それに似たものではなく、具体的で正確な質問をすることが重要です。 – zerkms

+0

申し訳ありません。投稿を編集しました。 – powerboy

関連する問題