如何使用PHP将CSV数据导入mongoDB
我有一个包含如下数据的CSV文件:如何使用PHP将CSV数据导入mongoDB,php,mongodb,csv,Php,Mongodb,Csv,我有一个包含如下数据的CSV文件: cn,mail,telephonenumber,uid admin,,, "Isaac Newton",newton@ldap.forumsys.com,,newton "Albert Einstein",einstein@ldap.forumsys.com,314-159-2653,einstein { "_id" : ObjectId("52c10f355b9e5cf00200014d
cn,mail,telephonenumber,uid
admin,,,
"Isaac Newton",newton@ldap.forumsys.com,,newton
"Albert Einstein",einstein@ldap.forumsys.com,314-159-2653,einstein
{ "_id" : ObjectId("52c10f355b9e5cf00200014d"), "Name" : "admin", "Email" : "Null", "Phone Number" : "Null", "User ID" : "Null" }
{ "_id" : ObjectId("52c10f355b9e5cf00200014d"), "Name" : "Isaac Newton", "Email" : "newton@ldap.forumsys.com", "Phone Number" : "Null", "User ID" : "newton" }
{ "_id" : ObjectId("52c10f355b9e5cf00200014d"), "Name" : "Albert Einstein", "Email" : "einstein@ldap.forumsys.com", "Phone Number" : "314-159-2653", "User ID" : "einstein" }
我希望在mongodb中,我的数据如下所示:
cn,mail,telephonenumber,uid
admin,,,
"Isaac Newton",newton@ldap.forumsys.com,,newton
"Albert Einstein",einstein@ldap.forumsys.com,314-159-2653,einstein
{ "_id" : ObjectId("52c10f355b9e5cf00200014d"), "Name" : "admin", "Email" : "Null", "Phone Number" : "Null", "User ID" : "Null" }
{ "_id" : ObjectId("52c10f355b9e5cf00200014d"), "Name" : "Isaac Newton", "Email" : "newton@ldap.forumsys.com", "Phone Number" : "Null", "User ID" : "newton" }
{ "_id" : ObjectId("52c10f355b9e5cf00200014d"), "Name" : "Albert Einstein", "Email" : "einstein@ldap.forumsys.com", "Phone Number" : "314-159-2653", "User ID" : "einstein" }
对于所有的空字段,它们也可能不存在,但希望说明缺少字段
我在这个论坛上找到了唯一的信息,但是使用了不推荐使用的mongo PHP驱动程序文档
但是,我编写了一些代码来插入单个文档
<?php
require 'vendor/autoload.php';
$mongo_location = "mongodb://localhost:27017";
$mongo = new MongoDB\Driver\Manager($mongo_location);
echo "Connected to ".$mongo_location;
$bulk = new MongoDB\Driver\BulkWrite;
$doc = array(
'id' => new MongoDB\BSON\ObjectID, #Generate MongoID
'name' => 'harry',
'age' => 14,
'roll_no' => 1
);
$bulk->insert($doc);
$mongo->executeBulkWrite('schooldb.student', $bulk); # 'schooldb' is database and 'student' is collection.
?>
正如您所看到的,现在连接mongodb的方式不同了。这里有一个解决方案:
composer需要ozdemirburak/json csv
你面临的确切问题是什么?您是在解析该文件还是在插入数据?