2012-06-06 99 views
1

如果我具有從這樣csv文件存儲值關聯數組:查找字符串PHP

$file_users = fopen("Users.csv", "r"); 
while (($record = fgetcsv($file_users, 1024, ',""')) !== FALSE){ 
     $users[]= array($record[0] => $record[2].$record[3]); 
} 

記錄[0],記錄[2]和記錄[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(). 

我在做什麼錯?有沒有另一種方法來查找關聯數組中的字符串?

+0

你可以寫$ users數組值嗎?根據錯誤,$ user數組沒有值或空數組。 –

+0

陣列是:數組 ( [1] =>數組 ( [ 「value_matricula」] => 「value_fullname」 ) ) – user1440402

回答

1

也許這樣?

foreach((array)$users[$i] as $username_matricula => $username_fullname){ 

通過在實際數組前面添加(數組),您可以使其變爲空心安全。 (沒有警告)

+0

是,問題解決,感謝您的時間:) – user1440402