我有一个简单的php脚本,用于将csv文件放入数组并将每行插入MongoDB(CD Collection)。但不知何故插入在第一次成功之后返回错误:
"Fatal error: in C:\xampp\htdocs\mongo\lesson1\index.php on line 17"
这是代码。什么可能导致这样的错误? DB只收到一个(第一个)。
$filename = 'd:/cd_col.csv'; // Each line: Title;No. of CD with movie
$csvfile = fopen($filename,'rb');
while(!feof($csvfile)) {
$csvarray[] = fgetcsv($csvfile);
}
$m = new MongoClient();
$db = $m->mymovies;
$collection = $db->movies;
$id=0;
foreach($csvarray as $key=>$value)
{
$movie = explode(';', $value[0]);
$fmovie = array('_id'=>++$id, 'title'=>$movie[0], 'cdno'=>$movie[1]);
if($collection->save($fmovie)===true) { // this is line 17
echo 'Successful insert: '.$key;
}
}
答案 0 :(得分:0)
解决:
不能在php中使用save,就是这样。 你应该使用$ collection-> insert();代替。