Vikram Vaswani による PHP A 初心者向けガイドブックからコピーしたこのサンプル スクリプトから、この変数 ($value) を初期化する方法を誰かが特定するのを手伝ってくれることを願っています。
php.ini で display_erors 値を有効にしましたが、ブラウザーでこのエラーが返されます。
注意: 未定義の変数: C:\BitNami\wordpress-3.6-0\apache2\htdocs\associative-array.php の 23 行目の都市
警告: C:\BitNami\wordpress-3.6-0\apache2\htdocs\associative-array.php の 23 行目の foreach() に無効な引数が指定されました
これは、この本の94ページからコピーした私のコードです
<?php
// define array
$citites = array(
"United Kingdom" => "London",
"United States" => "Washington DC",
"France" => "Paris",
"India" => "Delhi"
);
// Iterate over the associative array
// and print each value
// this example as supplied in the book
// returns uninitialized error for either $key or $value on line 20
foreach ($cities as $key => $value) {
echo "$value is in $key. \r\n";
}
?>
また、同じ章で、「配列イテレータ」がブラウザで無期限にハングアップするため、この他の例をコピーしました。これまで、本のすべての例は完全に機能しているように見えました。
これは、配列反復子の例の本からコピーしたコードです。これが無期限にハングアップし、ブラウザに出力が表示されない理由は誰でも知っています。助けてくれてどうもありがとう。
<?php
// define associative array (hash)
$cities = array(
"United States" => "Washington",
"United Kingdom" => "London",
"France" => "Paris",
"Spain" => "Madrid",
"Italy" => "Rome"
);
// Create an array itterator object
$iterator = new ArrayIterator($cities);
// rewind to beginning of array
$iterator->rewind();
// iterate over the array
// print each value
while ($iterator->valid()) {
print $iterator->current() . " is in " . $iterator->key() . ". \r\n";
$iterator->next;
}
?>