2015-09-08 3 views
-1

У меня есть массив в php, и я хочу вставить его в MongoDb.Вставка массива в MongoDb

Пусть:

$cars = array("Volvo", "BMW", "Toyota"); 

, и я хочу, чтобы создать документ как

{ 
    { 
     "user":user1, 
      cars":["volvo","BMW","Toyota"] 
    } 
} 

Как этого добиться?

+0

ли сделать, что вы пишете запрос – styvane

+0

Массива, принимаемый от другой страницы, и мне нужно, чтобы вставить его в коллекцию MongoDB , Так что все, что у меня есть, это переменная массива, которая соответствует автомобилю в этом вопросе и должна вставлять его в mongodb в заданном формате. –

+0

Как вы пытались вставить эти данные в MongoDB? Не могли бы вы показать нам ваш запрос? –

ответ

0

Этот учебник может помочь вам: http://www.tutorialspoint.com/mongodb/mongodb_php.htm

В частности вниз вокруг этого раздела.

<?php 
    // connect to mongodb 
    $m = new MongoClient(); 
    echo "Connection to database successfully"; 
    // select a database 
    $db = $m->mydb; 
    echo "Database mydb selected"; 
    $collection = $db->mycol; 
    echo "Collection selected succsessfully"; 
    $document = array( 
     "title" => "MongoDB", 
     "description" => "database", 
     "likes" => 100, 
     "url" => "http://www.tutorialspoint.com/mongodb/", 
     "by", "tutorials point" 
    ); 
    $collection->insert($document); 
    echo "Document inserted successfully"; 
?> 

Так что в вашем случае, вы хотите что-то вроде

$document = array(
    'user' => 'user1', 
    'cars' => array("Volvo", "BMW", "Toyota"), 
); 
+0

Что я имел в виду, мне нужно перебирать массив и обновлять коллекцию с каждым из значений массива или я могу что-то сделать как массив ('user' => 'user1', 'cars' => array ($ cars)) –

+0

@ShubhamSharma нет, вам не нужно перебирать массив и обновлять каждое значение. Рассматривая http://php.net/manual/en/mongo.updates.php, а также ссылку, о которой я упоминал ранее, вы должны иметь возможность делать '$ collection-> update (array ('user' => 'user1 '), array (' $ set '=> array ("cars" => $ cars))); 'где $ cars - ваш массив автомобилей. – aaronott

Смежные вопросы