<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/mongodb.architecture.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'mongodb.overview.php',
    1 => 'Architecture',
    2 => 'Aper&ccedil;u de l\'architecture',
  ),
  'up' => 
  array (
    0 => 'mongodb.architecture.php',
    1 => 'Architecture et fonctionnalit&eacute;s sp&eacute;ciales',
  ),
  'prev' => 
  array (
    0 => 'mongodb.architecture.php',
    1 => 'Architecture et fonctionnalit&eacute;s sp&eacute;ciales',
  ),
  'next' => 
  array (
    0 => 'mongodb.connection-handling.php',
    1 => 'Connections',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'reference/mongodb/architecture.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="mongodb.overview" class="section">
  
  <h2 class="title">Aperçu de l&#039;architecture</h2>

  <p class="para">
   Cet article explique comment tous les différents composants du pilote PHP
   s&#039;emboîtent, des bibliothèques système de base, à l&#039;extension, et aux
   bibliothèques PHP en haut.
  </p>

  <p class="para">
   <div class="mediaobject">
    
    <div class="imageobject">
     <img src="images/f3bc48edf40d5e3e09a166c7fadc7efb-driver_arch.svg" alt="
     Le diagramme d'architecture du pilote MongoDB PHP. Le niveau le plus bas
     du pilote est nos bibliothèques système : libmongoc, libbson, et
     libmongocrypt. Le niveau intermédiaire est l'extension PHP MongoDB. Le
     niveau supérieur est le code utilisateur PHP et inclut la bibliothèque
     MongoDB PHP et des packages de plus haut niveau tels que les intégrations
     de frameworks et les applications.
    " width="625" height="450" />
    </div>
   </div>
  </p>

  <p class="para">
   En haut de cette pile se trouve une
   <a href="https://github.com/mongodb/mongo-php-library" class="link external">&raquo;&nbsp;bibliothèque PHP</a>,
   qui distribue un
   <a href="https://packagist.org/packages//mongodb/mongodb" class="link external">&raquo;&nbsp;package Composer</a>.
   Cette bibliothèque fournit une API cohérente avec d&#039;autres
   <a href="https://www.mongodb.com/docs/drivers/" class="link external">&raquo;&nbsp;drivers</a>
   MongoDB et implémente diverses
   <a href="https://github.com/mongodb/specifications" class="link external">&raquo;&nbsp;spécifications</a>
   croisées. Bien que l&#039;extension puisse être utilisée directement, la bibliothèque
   a un surcoût minimal et devrait être une dépendance commune pour la plupart
   des applications construites avec MongoDB.
  </p>

  <p class="para">
   En dessous de cette bibliothèque se trouve une extension PHP, qui est
   distribuée via
   <a href="https://pecl.php.net/package/mongodb" class="link external">&raquo;&nbsp;PECL</a>.
   L&#039;extension forme la colle entre PHP et nos bibliothèques système
   (<a href="https://github.com/mongodb/mongo-c-driver" class="link external">&raquo;&nbsp;libmongoc</a>,
   <a href="https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson" class="link external">&raquo;&nbsp;libbson</a>, et
   <a href="https://github.com/mongodb/libmongocrypt" class="link external">&raquo;&nbsp;libmongocrypt</a>).
   Son API publique fournit uniquement les fonctionnalités les plus essentielles :
   <ul class="simplelist">
    <li>Gestion de connexions</li>
    <li>Encodage et décodage BSON</li>
    <li>Sérialisation et désérialisation de documents (support des bibliothèques ODM)</li>
    <li>Exécution de commandes, requêtes, et opérations d'écriture</li>
    <li>Gestion des curseurs pour les résultats de commandes et de requêtes</li>
   </ul>
  </p>

  <p class="para">
   <table class="doctable table">
    <caption><strong>Code source du pilote et projets JIRA</strong></caption>
    
     <thead>
      <tr>
       <th>Project</th>
       <th>GitHub</th>
       <th>JIRA</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td>Bibliothèques PHP</td>
       <td><a href="https://github.com/mongodb/mongo-php-library" class="link external">&raquo;&nbsp;mongodb/mongo-php-library</a></td>
       <td><a href="https://jira.mongodb.org/browse/PHPLIB" class="link external">&raquo;&nbsp;PHPLIB</a></td>
      </tr>

      <tr>
       <td>Extensions PHP</td>
       <td><a href="https://github.com/mongodb/mongo-php-driver" class="link external">&raquo;&nbsp;mongodb/mongo-php-driver</a></td>
       <td><a href="https://jira.mongodb.org/browse/PHPC" class="link external">&raquo;&nbsp;PHPC</a></td>
      </tr>

     </tbody>
    
   </table>

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