配列を作成する次のコードがあります。
$qry="SELECT foo_id, foo1, foo2 FROM foo_table";
$result=mysql_query($qry);
while($row = mysql_fetch_array($result)){
extract($row);
$my_array[$foo_id] = array('foo1' => $foo1, 'foo2' => $foo2);
}
これを別のファイル(array.php)に保存してから、これをコードに「含める」と(例1)、すべてが正常に機能し、$my_arrayを正常に呼び出すことができます。ただし、このコードを関数として設定し(例2)、コード内から呼び出してから配列を使用しようとすると、$my_arrayが定義されていないというメッセージが表示されます。
例1-配列を表示します
include 'array.php';
var_dump($my_array[1]);
例2-エラーメッセージUndefinedvariable:$my_arrayを取得します
function create_array(){
$qry="SELECT foo_id, foo1, foo2 FROM foo_table";
$result=mysql_query($qry);
while($row = mysql_fetch_array($result)){
extract($row);
$my_array[$foo_id] = array('foo1' => $foo1, 'foo2' => $foo2);
}
}
create_array();
var_dump($my_array[1]);
私は根本的に間違ったことをしていますか?私はphpに少し慣れていないので、簡単な説明をいただければ幸いです。
ありがとう