次のような csv ファイルの値を格納する連想配列がある場合:
$file_users = fopen("Users.csv", "r");
while (($record = fgetcsv($file_users, 1024, ',""')) !== FALSE){
$users[]= array($record[0] => $record[2].$record[3]);
}
record[0]、record[2]、および record[3] は、行ごとの列の値です。
次に、これは配列から値を検索して結果を出力する私の方法です:
for($i=0;$i<count($users);$i++){
foreach($users[$i] as $username_matricula => $username_fullname){
if($username_matricula === $some_string){
echo "Found: ".$some_string." and the result is: ".$username_fullname;
}#end if
}#end foreach
}#end for
そして、次の警告が表示されます。
Warning: Invalid argument supplied for foreach().
私は何を間違っていますか?連想配列で文字列を見つける別の方法はありますか?