1
for($i = 0; $i < count($prices); $i++){
error_log($prices[$i]->anObjectVariable);
}

また

foreach ($prices as $price){
error_log($price->anObjectVariable);
}

これらはどれも機能していないようです。次のエラーが発生します。

PHP Notice:  Undefined property: price::$anObjectVariable

これは、オブジェクトと配列を準備するために使用するコードです。

class price {

    public $anObjectVariable;

}

$prices = array();
    $p = new price();
    $p->anObjectVariable = "PRINT ME IN ERROR LOG!";
    array_push($prices, $p);
4

2 に答える 2

4

ローカルでテストしたところ、使用する前に$ pricesを配列として定義すると、次のコードが正常に機能します。

class price {

    public $anObjectVariable;

}

$prices = array();
$p = new price();
$p->anObjectVariable = "PRINT ME IN ERROR LOG!";
array_push($prices, $p);

for($i = 0; $i < count($prices); $i++){
    echo($prices[$i]->anObjectVariable);
}

上に示したコード(つまり、上に投稿したコード)を実際にテストしていますか、それとも派生物に取り組んでいますか?上記の正確なスニペットが正しく機能することを確認できますか?

于 2013-03-21T17:13:56.807 に答える
2

次に、タイプミスでない場合

for ($i = 0; $i < count($prices); $i++) {
    error_log($prices[$i]->anObjectVariable);
}

動作するはずです

于 2013-03-21T17:12:22.720 に答える