<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/class.mongodb-driver-query.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'mongodb-driver-query.construct.php',
    1 => 'MongoDB\\Driver\\Query::__construct',
    2 => 'Crear una nueva consulta',
  ),
  'up' => 
  array (
    0 => 'class.mongodb-driver-query.php',
    1 => 'MongoDB\\Driver\\Query',
  ),
  'prev' => 
  array (
    0 => 'class.mongodb-driver-query.php',
    1 => 'MongoDB\\Driver\\Query',
  ),
  'next' => 
  array (
    0 => 'class.mongodb-driver-bulkwrite.php',
    1 => 'MongoDB\\Driver\\BulkWrite',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/mongodb/mongodb/driver/query/construct.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="mongodb-driver-query.construct" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">MongoDB\Driver\Query::__construct</h1>
  <p class="verinfo">(mongodb &gt;=1.0.0)</p><p class="refpurpose"><span class="refname">MongoDB\Driver\Query::__construct</span> &mdash; <span class="dc-title">Crear una nueva consulta</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-mongodb-driver-query.construct-description">
  <h3 class="title">Descripción</h3>
  <div class="methodsynopsis dc-description">
   <span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><strong>MongoDB\Driver\Query::__construct</strong></span>(<span class="methodparam"><span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span> <code class="parameter">$filter</code></span>, <span class="methodparam"><span class="type"><span class="type"><a href="language.types.null.php" class="type null">?</a></span><span class="type"><a href="language.types.array.php" class="type array">array</a></span></span> <code class="parameter">$queryOptions</code><span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span></span>)</div>

  <p class="para rdfs-comment">
   Construye un nuevo objeto <span class="classname"><a href="class.mongodb-driver-query.php" class="classname">MongoDB\Driver\Query</a></span>, que es un objeto
   de valor inmutable que representa una consulta de base de datos. La consulta puede
   luego ser ejecutada con
   <span class="methodname"><a href="mongodb-driver-manager.executequery.php" class="methodname">MongoDB\Driver\Manager::executeQuery()</a></span>.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-mongodb-driver-query.construct-parameters">
  <h3 class="title">Parámetros</h3>
  <dl>
   

<dt><code class="parameter">filter</code> (<span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span>)</dt>
<dd>
    <p class="para">
        El <a href="https://www.mongodb.com/docs/manual/tutorial/query-documents/" class="link external">&raquo;&nbsp;atributo de la consulta</a>.
        Un atributo vacío hará coincidir todos los documentos de la colección.
    </p>
    <blockquote class="note"><p><strong class="note">Nota</strong>: 
        <span class="simpara">
            Al evaluar los criterios de consulta, MongoDB compara los tipos y los valores según sus propias <a href="https://www.mongodb.com/docs/manual/reference/bson-type-comparison-order/" class="link external">&raquo;&nbsp;reglas de comparación para los tipos BSON</a>, que difieren de las reglas de <a href="types.comparisons.php" class="link">comparación</a> y de <a href="language.types.type-juggling.php" class="link">manipulación de tipos</a> de PHP. Al hacer coincidir un tipo BSON especial, los criterios de consulta deben utilizar la <a href="mongodb.bson.php" class="link">clase BSON</a> (ej.: utilizar <span class="classname"><a href="class.mongodb-bson-objectid.php" class="classname">MongoDB\BSON\ObjectId</a></span> para hacer coincidir un <a href="https://www.mongodb.com/docs/manual/reference/bson-types/#objectid" class="link external">&raquo;&nbsp;ObjectId</a>).
        </span>
    </p></blockquote>
</dd>


   
    <dt><code class="parameter">queryOptions</code></dt>
    <dd>
     <p class="para">
      <table id="mongodb-driver-query.construct-queryOptions" class="doctable table">
       <caption><strong>queryOptions</strong></caption>
       
        <thead>
         <tr>
          <th>Option</th>
          <th>Type</th>
          <th>Description</th>
         </tr>

        </thead>

        <tbody class="tbody">
         <tr>
          <td>allowDiskUse</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           <p class="para">
            Autoriza a MongoDB a utilizar ficheros temporales en el disco
            para almacenar datos que excedan el límite de memoria del sistema
            de 100 megabytes al procesar una operación de clasificación bloqueante.
           </p>
          </td>
         </tr>

         <tr>
          <td>allowPartialResults</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           <p class="para">
            Para las consultas en una colección fragmentada, devuelve resultados parciales del mongos si algunos fragmentos no están
            disponibles en lugar de generar un error.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;partial&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>awaitData</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           Utilizar en conjunción con la opción <code class="literal">&quot;tailable&quot;</code> para
           bloquear temporalmente una operación getMore en el cursor si al final
           de los datos en lugar de no devolver datos. Después de un período
           de espera, la consulta termina normalmente.
          </td>
         </tr>

         <tr>
          <td>batchSize</td>
          <td><span class="type"><a href="language.types.integer.php" class="type int">int</a></span></td>
          <td>
           <p class="para">
            El número de documentos a devolver en el primer lote. Por omisión a
            101. Un tamaño de lote de 0 significa que el cursor será establecido, pero
            ningún documento será devuelto en el primer lote.
           </p>
           <p class="para">
            En las versiones de MongoDB anteriores a 3.2, donde las consultas
            utilizan el protocolo de filaire heredado OP_QUERY, un tamaño de lote
            de 1 cerrará el cursor independientemente del número de documentos.
           </p>
          </td>
         </tr>

         
<tr>
<td>collation</td>
<td><span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></td>
<td>
    <p class="para">
        <a href="https://www.mongodb.com/docs/upcoming/reference/collation/" class="link external">&raquo;&nbsp;Collation</a> permite a los usuarios especificar reglas específicas del lenguaje para la comparación de cadenas, por ejemplo, reglas para mayúsculas o acentos. Al especificar una collation, el campo <code class="literal">&quot;locale&quot;</code> es obligatorio; todos los demás campos de la collation son opcionales. Para la descripción de estos campos, consúltese el <a href="https://www.mongodb.com/docs/upcoming/reference/collation/#collation-document" class="link external">&raquo;&nbsp;documento Collation</a>.
    </p>
    <p class="para">
        Si la collation no es especificada pero la colección tiene una collation por omisión, la operación utilizará la collation especificada para la colección. Si ninguna collation es especificada para la colección o para la operación, MongoDB utilizará el binario simple de comparación utilizado en versiones anteriores para las comparaciones de cadenas.
    </p>
    <p class="para">
        Esta opción está disponible en MongoDB 3.4+ y una excepción será emitida en tiempo de ejecución si es especificada en una versión anterior.
    </p>
</td>
</tr>


         <tr>
          <td>comment</td>
          <td><span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span></td>
          <td>
           <p class="para">
            Un comentario arbitrario para ayudar a rastrear la operación a través
            del perfil de la base de datos, la salida currentOp y los registros.
           </p>
           <p class="para">
            El comentario puede ser cualquier tipo BSON válido para MongoDB
            4.4+. Las versiones de servidor anteriores solo admiten
            valores de cadena.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$comment&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>exhaust</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           <p class="para">
            El flujo de datos aguas abajo a plena potencia en varios paquetes
            &quot;more&quot;, asumiendo que el cliente leerá completamente todos los datos
            consultados. Más rápido cuando se extraen muchos datos y
            se sabe que se quiere extraer todo. Nota: el cliente no está autorizado
            a no leer todos los datos a menos que cierre la conexión.
           </p>
           <p class="para">
            Esta opción no es admitida por el comando find en MongoDB
            3.2+ y forzará al controlador a utilizar la versión del protocolo de filaire
            heredado (es decir, OP_QUERY).
           </p>
          </td>
         </tr>

         <tr>
          <td>explain</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           <p class="para">
            Si <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> el cursor <span class="classname"><a href="class.mongodb-driver-cursor.php" class="classname">MongoDB\Driver\Cursor</a></span> devuelto
            contendrá un solo documento que describe el proceso y los índices utilizados
            para devolver la consulta.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$explain&quot;</code> si no
            se especifica.
           </p>
           <p class="para">
            Esta opción no es admitida por el comando find en MongoDB
            3.2+ y solo será respetada al utilizar la versión del protocolo de filaire
            heredado (es decir, OP_QUERY). El comando
            <a href="https://www.mongodb.com/docs/manual/reference/command/explain/" class="link external">&raquo;&nbsp;explain</a>
            debe ser utilizado en MongoDB 3.0+.
           </p>
          </td>
         </tr>

         <tr>
          <td>hint</td>
          <td><span class="type"><span class="type"><a href="language.types.string.php" class="type string">string</a></span>|<span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></td>
          <td>
           <p class="para">
            Especificación del índice. Especifique el nombre del índice como
            cadena, o el patrón de clave de índice. Si se especifica, el sistema de consulta
            solo considerará los planes que utilicen el índice sugerido.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;hint&quot;</code> si no se especifica.
           </p>
          </td>
         </tr>

         
 <tr>
  <td>let</td>
  <td><span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></td>
  <td>
   <p class="para">
    Diccionario de nombres y valores de parámetros. Los valores deben ser constantes o expresiones cerradas que no hagan referencia a campos del documento. Los parámetros pueden ser accedidos luego como variables en un contexto de expresión agregada (por ejemplo <code class="literal">$$var</code>).
   </p>
   <p class="para">
    Esta opción está disponible en MongoDB 5.0+ y resultará en una excepción en tiempo de ejecución si es especificada para una versión anterior del servidor.
   </p>
  </td>
 </tr>


         <tr>
          <td>limit</td>
          <td><span class="type"><a href="language.types.integer.php" class="type int">int</a></span></td>
          <td>
           <p class="para">
            El número máximo de documentos a devolver. Si no se especifica, entonces
            por omisión a ningún límite. Un límite de 0 es equivalente a no establecer
            un límite.
           </p>
          </td>
         </tr>

         <tr>
          <td>max</td>
          <td><span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></td>
          <td>
           <p class="para">
            El límite superior <em>exclusivo</em> para un índice específico.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$max&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>maxAwaitTimeMS</td>
          <td><span class="type"><a href="language.types.integer.php" class="type int">int</a></span></td>
          <td>
           <p class="para">
            Entero positivo que indica el límite de tiempo en milisegundos para que el
            servidor bloquee una operación getMore si no hay datos disponibles. Esta opción solo debe
            ser utilizada en conjunción con las opciones <code class="literal">&quot;tailable&quot;</code> y
            <code class="literal">&quot;awaitData&quot;</code>.
           </p>
          </td>
         </tr>

         <tr>
          <td>maxTimeMS</td>
          <td><span class="type"><a href="language.types.integer.php" class="type int">int</a></span></td>
          <td>
           <p class="para">
            El límite de tiempo acumulativo en milisegundos para el procesamiento de
            las operaciones en el cursor. MongoDB detiene la operación en el primer punto
            de interrupción más cercano.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$maxTimeMS&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>min</td>
          <td><span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></td>
          <td>
           <p class="para">
            El límite inferior <em>inclusivo</em> para un índice específico.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$min&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>noCursorTimeout</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           Evita que el servidor finalice los cursores inactivos después de un período
           de inactividad (10 minutos).
          </td>
         </tr>

         <tr>
          <td>projection</td>
          <td><span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></td>
          <td>
           <p class="para">
            Las <a href="https://www.mongodb.com/docs/manual/tutorial/project-fields-from-query-results/" class="link external">&raquo;&nbsp;especificaciones de proyección</a>
            para determinar qué campos incluir en los documentos devueltos.
           </p>
           <p class="para">
            Si se utiliza la
            <a href="mongodb.persistence.php#mongodb.persistence.deserialization" class="link">funcionalidad ODM</a>
            para deserializar los documentos como su clase PHP original,
            asegúrese de incluir el campo <span class="property">__pclass</span> en la
            proyección. Esto es necesario para que la deserialización funcione
            y sin ello, la extensión devolverá (por omisión) un objeto
            <span class="classname"><a href="class.stdclass.php" class="classname">stdClass</a></span> en su lugar.
           </p>
          </td>
         </tr>

         <tr>
          <td>readConcern</td>
          <td><span class="classname"><a href="class.mongodb-driver-readconcern.php" class="classname">MongoDB\Driver\ReadConcern</a></span></td>
          <td>
           <p class="para">
            Un read concern a aplicar a la operación. Por omisión, el read concern
            de la <a href="mongodb-driver-manager.construct.php#mongodb-driver-manager.construct-uri" class="link">URI
            de conexión MongoDB</a>
            será utilizado.
           </p>
           <p class="para">
            Esta opción está disponible en MongoDB 3.2+ y provocará una
            excepción en el momento de la ejecución si se especifica para una
            versión de servidor más antigua.
           </p>
          </td>
         </tr>

         <tr>
          <td>returnKey</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           <p class="para">
            Si <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>, solo devuelve las claves de índice en los documentos
            resultantes. El valor por omisión es <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>. Si <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> y la
            comando find no utiliza un índice, los documentos devueltos estarán vacíos.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$returnKey&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>showRecordId</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           <p class="para">
            Determina si el identificador de registro debe ser devuelto para
            cada documento. Si <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>, añade un campo <code class="literal">&quot;$recordId&quot;</code>
            de primer nivel a los documentos devueltos.
           </p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$showDiskLoc&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>singleBatch</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>
           Determina si el cursor debe ser cerrado después del primer lote.
           Por omisión a <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>.
          </td>
         </tr>

         <tr>
          <td>skip</td>
          <td><span class="type"><a href="language.types.integer.php" class="type int">int</a></span></td>
          <td>Número de documentos a saltar. Por omisión a 0.</td>
         </tr>

         <tr>
          <td>sort</td>
          <td><span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></td>
          <td>
           <p class="para">La especificación de clasificación para el ordenamiento de los resultados.</p>
           <p class="para">
            Retoma la opción deprecada <code class="literal">&quot;$orderby&quot;</code> si no
            se especifica.
           </p>
          </td>
         </tr>

         <tr>
          <td>tailable</td>
          <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
          <td>Devuelve un cursor tailable para una colección acotada.</td>
         </tr>

        </tbody>
       
      </table>

     </p>
    </dd>
   
  </dl>
 </div>


 <div class="refsect1 errors" id="refsect1-mongodb-driver-query.construct-errors">
  <h3 class="title">Errores/Excepciones</h3>
  <ul class="simplelist">
   <li>Lanza una excepción <span class="classname"><strong class="classname">MongoDB\Driver\InvalidArgumentException</strong></span> en caso de error durante el análisis de un argumento.</li>
  </ul>
 </div>


 <div class="refsect1 changelog" id="refsect1-mongodb-driver-query.construct-changelog">
  <h3 class="title">Historial de cambios</h3>
  <p class="para">
   <table class="doctable informaltable">
    
     <thead>
      <tr>
       <th>Versión</th>
       <th>Descripción</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td>PECL mongodb 2.0.0</td>
       <td>
        <p class="para">
         La opción <code class="literal">&quot;partial&quot;</code> ha sido eliminada. Utilice
         <code class="literal">&quot;allowPartialResults&quot;</code> en su lugar.
        </p>
        <p class="para">
         La opción <code class="literal">&quot;maxScan&quot;</code> ha sido eliminada. El soporte
         para esta opción ha sido eliminado en MongoDB 4.2.
        </p>
        <p class="para">
         La opción <code class="literal">&quot;modifiers&quot;</code> ha sido eliminada. Esta opción era
         utilizada para los modificadores de consulta antigua, que están todos deprecados.
        </p>
        <p class="para">
         La opción <code class="literal">&quot;oplogReplay&quot;</code> ha sido eliminada. Esto es ignorado
         en MongoDB 4.4 y versiones más recientes.
        </p>
        <p class="para">
         La opción <code class="literal">&quot;snapshot&quot;</code> ha sido eliminada. Su soporte ha sido
         eliminado en MongoDB 4.0.
        </p>
        <p class="para">
         Un valor negativo para la opción <code class="literal">&quot;limit&quot;</code> ya no implica <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> para la opción
         <code class="literal">&quot;singleBatch&quot;</code>. Para recibir solo un lote de resultados, combine un valor positivo
         <code class="literal">&quot;limit&quot;</code> con la opción
         <code class="literal">&quot;singleBatch&quot;</code>.
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.14.0</td>
       <td>
        <p class="para">
         Añadida la opción <code class="literal">&quot;let&quot;</code>. La opción
         <code class="literal">&quot;comment&quot;</code> ahora acepta cualquier tipo.
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.8.0</td>
       <td>
        <p class="para">
         Añadida la opción <code class="literal">&quot;allowDiskUse&quot;</code>.
        </p>
        <p class="para">
         La opción <code class="literal">&quot;oplogReplay&quot;</code> está deprecada.
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.5.0</td>
       <td>
        <p class="para">
         Las opciones <code class="literal">&quot;maxScan&quot;</code> y <code class="literal">&quot;snapshot&quot;</code>
         están deprecadas.
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.3.0</td>
       <td>
        <p class="para">
         Añadida la opción <code class="literal">&quot;maxAwaitTimeMS&quot;</code>
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.2.0</td>
       <td>
        <p class="para">
         Añadidas las opciones <code class="literal">&quot;allowPartialResults&quot;</code>,
         <code class="literal">&quot;collation&quot;</code>, <code class="literal">&quot;comment&quot;</code>,
         <code class="literal">&quot;hint&quot;</code>, <code class="literal">&quot;max&quot;</code>,
         <code class="literal">&quot;maxScan&quot;</code>, <code class="literal">&quot;maxTimeMS&quot;</code>,
         <code class="literal">&quot;min&quot;</code>, <code class="literal">&quot;returnKey&quot;</code>,
         <code class="literal">&quot;showRecordId&quot;</code>, y <code class="literal">&quot;snapshot&quot;</code>.
        </p>
        <p class="para">
         Renombrada la opción <code class="literal">&quot;partial&quot;</code> a
         <code class="literal">&quot;allowPartialResults&quot;</code>. Por compatibilidad ascendente,
         <code class="literal">&quot;partial&quot;</code> será siempre leído si
         <code class="literal">&quot;allowPartialResults&quot;</code> no está especificado.
        </p>
        <p class="para">
         Eliminada la opción <code class="literal">&quot;secondaryOk&quot;</code> obsoleta. Para las
         consultas que utilizan el protocolo de filaire heredado OP_QUERY, el controlador
         establecerá el bit <code class="literal">secondaryOk</code> según sea necesario
         conforme a la
         <a href="https://github.com/mongodb/specifications/blob/master/source/server-selection/server-selection.md" class="link external">&raquo;&nbsp;Especificación de selección del servidor</a>.
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.1.0</td>
       <td>Añadida la opción <code class="literal">&quot;readConcern&quot;</code>.</td>
      </tr>

     </tbody>
    
   </table>

  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-mongodb-driver-query.construct-examples">
  <h3 class="title">Ejemplos</h3>
  <div class="example" id="example-1">
   <p><strong>Ejemplo #1 Ejemplo de <span class="function"><strong>MongoDB\Driver\Query::__construct()</strong></span></strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* Selecciona solo los documentos escritos por "bjori" con al menos 100 vistas */<br /></span><span style="color: #0000BB">$filter </span><span style="color: #007700">= [<br />    </span><span style="color: #DD0000">'author' </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">'bjori'</span><span style="color: #007700">,<br />    </span><span style="color: #DD0000">'views' </span><span style="color: #007700">=&gt; [<br />        </span><span style="color: #DD0000">'$gte' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">100</span><span style="color: #007700">,<br />    ],<br />];<br /><br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= [<br />    </span><span style="color: #FF8000">/* Devuelve solo los siguientes campos en los documentos correspondientes */<br />    </span><span style="color: #DD0000">'projection' </span><span style="color: #007700">=&gt; [<br />        </span><span style="color: #DD0000">'title' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">1</span><span style="color: #007700">,<br />        </span><span style="color: #DD0000">'article' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">1</span><span style="color: #007700">,<br />    ],<br />    </span><span style="color: #FF8000">/* Devuelve los documentos en orden descendente de vistas */<br />    </span><span style="color: #DD0000">'sort' </span><span style="color: #007700">=&gt; [<br />        </span><span style="color: #DD0000">'views' </span><span style="color: #007700">=&gt; -</span><span style="color: #0000BB">1<br />    </span><span style="color: #007700">],<br />];<br /><br /></span><span style="color: #0000BB">$query </span><span style="color: #007700">= new </span><span style="color: #0000BB">MongoDB\Driver\Query</span><span style="color: #007700">(</span><span style="color: #0000BB">$filter</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$manager </span><span style="color: #007700">= new </span><span style="color: #0000BB">MongoDB\Driver\Manager</span><span style="color: #007700">(</span><span style="color: #DD0000">'mongodb://localhost:27017'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$readPreference </span><span style="color: #007700">= new </span><span style="color: #0000BB">MongoDB\Driver\ReadPreference</span><span style="color: #007700">(</span><span style="color: #0000BB">MongoDB\Driver\ReadPreference</span><span style="color: #007700">::</span><span style="color: #0000BB">PRIMARY</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$cursor </span><span style="color: #007700">= </span><span style="color: #0000BB">$manager</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">executeQuery</span><span style="color: #007700">(</span><span style="color: #DD0000">'databaseName.collectionName'</span><span style="color: #007700">, </span><span style="color: #0000BB">$query</span><span style="color: #007700">, [</span><span style="color: #DD0000">'readPreference' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">$readPreference</span><span style="color: #007700">]);<br /><br />foreach(</span><span style="color: #0000BB">$cursor </span><span style="color: #007700">as </span><span style="color: #0000BB">$document</span><span style="color: #007700">) {<br />    </span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$document</span><span style="color: #007700">);<br />}<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>
 </div>


 <div class="refsect1 seealso" id="refsect1-mongodb-driver-query.construct-seealso">
  <h3 class="title">Ver también</h3>
  <ul class="simplelist">
   <li><span class="methodname"><a href="mongodb-driver-manager.executequery.php" class="methodname" rel="rdfs-seeAlso">MongoDB\Driver\Manager::executeQuery()</a> - Ejecuta una consulta de base de datos</span></li>
   <li><span class="classname"><a href="class.mongodb-driver-cursor.php" class="classname">MongoDB\Driver\Cursor</a></span></li>
  </ul>
 </div>


</div><?php manual_footer($setup); ?>