PHP MongoDB Исключить _id из результатов

Я хочу исключить поле _id из результатов поиска mongodb с помощью PHP. Если я использую $ param в качестве второго параметра поиска, он работает, но, очевидно, печатается. Вот мой код:

$type['Tipo de objeto']=$_POST[type]; $param = $_POST[field]; $conn = new Mongo(); $db = $conn->selectDB('prov'); $results = $db->$table->find($type, $param); print_r($param) // Array ( [0] => Título [1] => Descripción [2] => Actos [3] => Formato original [4] => Título [5] => Descripción ) 

Если я использую следующий код: _id также печатается, не знаю, что мне не хватает:

 $results = $db->$table->find($type, array("_id : 0" , "Derechos : 1", "Actos : 0")); //Fields marked with 1 gets printed, fields marked with 0 doesn't, except for _id. 

Заранее спасибо.

Related of "PHP MongoDB Исключить _id из результатов"

Вы не отправляете правильно свою проекцию (вещь, которую вы пытаетесь вернуть, второй параметр в поиске)

Поэтому вместо этого

 array( "_id : 0" , "Derechos : 1", "Actos : 0" ) 

что совершенно неверно, вам нужно ввести

 array( "_id" => 0, "Derechos" => 1 ) 

Если вы приземлились здесь и используете обновленную библиотеку MongoDB, вы можете посмотреть здесь: MongoDBCollection-find

и вам нужно будет сделать что-то вроде этого:

  $fields = array( 'projection'=>array( '_id'=>0, 'Derechos'=>1, ) );