mirror of
https://github.com/php/doc-ru.git
synced 2025-08-20 23:31:15 +00:00
Update to English library.xml
This commit is contained in:
@ -1,13 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- EN-Revision: 077667aa60c2eaee4fbb704824e265d3ad6120b3 Maintainer: rjhdby Status: ready -->
|
||||
<!-- EN-Revision: e9214a2619efc5906fab59cd42fb7404c4dc49a5 Maintainer: rjhdby Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<chapter xml:id="mongodb.tutorial.library" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<title>Работа библиотеки PHP с драйвером MongoDB (PHPLIB)</title>
|
||||
|
||||
<para>
|
||||
После первоначальной настройки драйвера продолжится объяснение того, как начать
|
||||
работу с драйвером MongoDB и пользовательской библиотекой
|
||||
чтобы создать первый проект.
|
||||
После первоначальной настройки модуля продолжится объяснение того, как начать
|
||||
работу с соответствующей пользовательской библиотекой для написания первого проекта.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
@ -19,7 +18,7 @@
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Библиотеку будем устанавливать через пакетный менеджер
|
||||
Библиотеку будем устанавливать через пакетный менеджер
|
||||
<link xlink:href="&url.mongodb.composer;">Composer</link>.
|
||||
Инструкции по установке Composer на разные платформы опубликованы на его сайте.
|
||||
</para>
|
||||
@ -114,9 +113,9 @@ echo "Идентификатор вставленного документа '{$
|
||||
|
||||
<para>
|
||||
Поскольку вставленный документ не содержал поля <code>_id</code>,
|
||||
драйвер сгенерирует для сервера объект <classname>MongoDB\BSON\ObjectId</classname>,
|
||||
чтобы использовать как <code>_id</code>. Это значение также становится доступно
|
||||
вызываемому на объекте результата методу <code>insertOne</code>.
|
||||
модуль сгенерирует объект <classname>MongoDB\BSON\ObjectId</classname>,
|
||||
чтобы сервера использовал его как <code>_id</code>. Это значение также становится доступно
|
||||
вызывающей стороне через результирующий объект, который возвращается методом <code>insertOne</code>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -126,30 +125,34 @@ echo "Идентификатор вставленного документа '{$
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
require 'vendor/autoload.php'; // подключаем автозагрузчик классов Composer
|
||||
|
||||
require 'vendor/autoload.php'; // Подключаем автозагрузчик классов Composer
|
||||
|
||||
$client = new MongoDB\Client("mongodb://localhost:27017");
|
||||
$collection = $client->demo->beers;
|
||||
|
||||
$result = $collection->find( [ 'name' => 'Hinterland', 'brewery' => 'BrewDog' ] );
|
||||
$result = $collection->find(['name' => 'Hinterland', 'brewery' => 'BrewDog']);
|
||||
|
||||
foreach ($result as $entry) {
|
||||
echo $entry['_id'], ': ', $entry['name'], "\n";
|
||||
}
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Хотя после знакомства с примерами может быть неочевидно, но документы BSON и массивы по умолчанию
|
||||
десериализованы как типы классов в библиотеке. Эти классы дают гарантию, что
|
||||
значения сохранят типы при сериализации обратно в BSON,
|
||||
что исключает проблемы со старыми драйверами, когда массивы могли преобразоваться
|
||||
в документы и наоборот. А также этот тип классов расширяет
|
||||
класс <classname>ArrayObject</classname>, что повышает удобство работы с ними.
|
||||
Подробнее о сериализации и десериализации между переменными PHP
|
||||
и BSON рассказано в спецификации <xref linkend="mongodb.persistence"/>.
|
||||
Хотя примеры не всегда добавляют очевидности, но BSON-документы и BSON-массивы по умолчанию
|
||||
не сериализуются как специальные классы в библиотеке. Эти классы
|
||||
расширяют класс <classname>ArrayObject</classname> для удобства и реализуют
|
||||
интерфейсы модуля <interfacename>MongoDB\BSON\Serializable</interfacename>
|
||||
и <interfacename>MongoDB\BSON\Unserializable</interfacename>, чтобы гарантировать,
|
||||
что значения сохраняют тип при сериализации обратно в BSON. Это
|
||||
помогает избежать предостережения в устаревшем модуле <code>mongo</code>, в котором массивы
|
||||
могли превращаться в документы и наоборот. Дополнительную информацию
|
||||
о преобразовании значений между PHP и BSON даёт спецификация
|
||||
<xref linkend="mongodb.persistence"/>.
|
||||
</para>
|
||||
</section>
|
||||
</chapter><!-- Keep this comment at the end of the file
|
||||
|
Reference in New Issue
Block a user