# php_manual

id: ob_tidyhandler
type: function
doc:
<comment>Description:</comment>
  Функция обратного вызова ob_start для восстановление буфера
  
  Функция обратного вызова <strong>ob_start()</strong> для восстановление буфера.

<comment>Param:</comment>
  <info>string</info>  <strong>$input</strong>  Буфер.
  <info>int</info>     <strong>$mode</strong>   Режим буфера.

<comment>Return:</comment>
  <info>string</info>  Возвращает видоизменённый буфер.

<comment>See Also:</comment>
   * <strong>ob_start()</strong>


id: oci_bind_array_by_name
type: function
doc:
<comment>Description:</comment>
  Связывает PHP массив с массивом Oracle PL/SQL
    
  
  Связывает PHP массив <strong>$var</strong> с указателем Oracle <strong>$param</strong> на массив Oracle PL/SQL. Направление, ввод
  или вывод, для которого будет использоваться массив будет определяться во время выполнения.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>         Идентификатор допустимого OCI выражения.
  <info>string</info>    <strong>$param</strong>             Указатель на массив Oracle.
  <info>array</info>     <strong>$var</strong>               Массив.
  <info>int</info>       <strong>$max_array_length</strong>  Задаёт максимальный размер для исходного и результирующего массивов.
  <info>int</info>       <strong>$max_item_length</strong>   Задаёт максимальный размер значений массива. Если не задано или равно
                               -1, <strong>oci_bind_array_by_name()</strong> найдёт самый большой элемент в исходном
                               массиве и использует его размер в качестве этой настройки.
  <info>int</info>       <strong>$type</strong>              Используется для задания типа значений PL/SQL массива. Смотрите
                               список ниже:
                               
                               <info>SQLT_NUM</info> - для массивов с элементами типа NUMBER. <info>SQLT_INT</info> - для
                               массивов с элементами типа INTEGER (Замечание: INTEGER - синоним для
                               типа NUMBER(38), однако тип <info>SQLT_NUM</info> в этом случае не будет работать,
                               даже несмотря на то, что они синонимичны). <info>SQLT_FLT</info> - для массивов с
                               элементами типа FLOAT. <info>SQLT_AFC</info> - для массивов с элементами типа
                               CHAR. <info>SQLT_CHR</info> - для массивов с элементами типа VARCHAR2. <info>SQLT_VCS</info> -
                               для массивов с элементами типа VARCHAR. <info>SQLT_AVC</info> - для массивов с
                               элементами типа CHARZ. <info>SQLT_STR</info> - для массивов с элементами типа
                               STRING. <info>SQLT_LVC</info> - для массивов с элементами типа LONG VARCHAR.
                               <info>SQLT_ODT</info> - для массивов с элементами типа DATE.
                               
                               <info>SQLT_NUM</info> - для массивов с элементами типа NUMBER.
                               
                               <info>SQLT_INT</info> - для массивов с элементами типа INTEGER (Замечание: INTEGER
                               - синоним для типа NUMBER(38), однако тип <info>SQLT_NUM</info> в этом случае не
                               будет работать, даже несмотря на то, что они синонимичны).
                               
                               <info>SQLT_FLT</info> - для массивов с элементами типа FLOAT.
                               
                               <info>SQLT_AFC</info> - для массивов с элементами типа CHAR.
                               
                               <info>SQLT_CHR</info> - для массивов с элементами типа VARCHAR2.
                               
                               <info>SQLT_VCS</info> - для массивов с элементами типа VARCHAR.
                               
                               <info>SQLT_AVC</info> - для массивов с элементами типа CHARZ.
                               
                               <info>SQLT_STR</info> - для массивов с элементами типа STRING.
                               
                               <info>SQLT_LVC</info> - для массивов с элементами типа LONG VARCHAR.
                               
                               <info>SQLT_ODT</info> - для массивов с элементами типа DATE.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: oci_bind_by_name
type: function
doc:
<comment>Description:</comment>
  Прикрепляет переменную PHP к соответствующей метке в SQL-выражении
  
  Прикрепляет переменную <strong>$var</strong> к метке <strong>$param</strong>. Такое прикрепление позволяет повысить
  производительность и избежать SQL-инъекций.
  
  Прикрепление переменной позволяет базе данных повторно использовать кешированные контекстные
  выражения от предыдущих запросов, даже если они первоначально были запущены другим пользователем
  или процессом. Это также снижает риск SQL-инъекций, поскольку данные в таком случае никогда не
  рассматриваются как инструкции SQL. Данные не требуется экранировать или заключать в кавычки.
  
  Прикреплённые PHP-переменные могут быть изменены и снова выполнены без необходимости повторной
  обработки запроса или повторного прикрепления.
  
  В Oracle, прикрепление переменных обычно разделяют на <return>IN</return> (прикрепляет значения, передаваемые в
  базу данных) и <return>OUT</return> (прикрепляет значения, возвращаемые PHP). Переменная может быть одновременно <return>IN</return>
  и <return>OUT</return>.  Независимо от этого, характер прикрепления переменных будет определён во время выполнения.
  
  Необходимо указать <strong>$max_length</strong> при использовании <return>OUT</return>-привязки, что позволяет PHP зарезервировать
  больше памяти для хранения возвращаемого значения
  
  Для <return>IN</return>-привязки рекомендуется также указать параметр <strong>$max_length</strong>, если выражение выполняется
  несколько раз с различными значениями PHP-переменной. В противном случае, Oracle может урезать
  размер данных до размера первоначального значения переменной PHP. Если максимальная длина значения
  неизвестна, рекомендуется вызывать <strong>oci_bind_by_name()</strong> перед каждым вызовом <strong>oci_execute()</strong>.
  Прикрепление неоправданно большой переменной повлияет на процесс сохранения базы данных.
  
  Вид прикрепления указывает Oracle как работать с памятью при чтении данных. Для <return>IN</return>-прикрепления
  адрес в памяти должен содержать допустимые данные при вызове <strong>oci_execute()</strong>.  Это значит, что
  значение переменной должно находиться в памяти во время исполнения. Если это не так, возможны
  некорректные результаты или ошибки наподобие "ORA-01460: unimplemented or unreasonable conversion
  requested" (запрошены невыполнимые или некорректные преобразования) Для <return>OUT</return>-прикрепления основным
  признаком является установка значения в переменную PHP.
  
  Для многократно выполняемого выражения, привязка одних и тех же значений может уменьшить
  возможности оптимизатора Oracle по выработке наилучшего варианта выполнения инструкции. Длительное
  прикрепление выражений, которые редко исполняются, может также не принести пользы. Тем не менее, в
  обоих случаях, прикрепление является более безопасным, чем конкатенация строки запроса и
  непроверенных пользовательских данных.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>   Допустимый идентификатор выражения OCI8.
  <info>string</info>    <strong>$param</strong>       Метка с префиксом в виде двоеточия, используемая в выражении. Двоеточие
                         опционально в <strong>$param</strong>. Oracle не использует знак вопроса для меток.
  <info>mixed</info>     <strong>$var</strong>         Переменная PHP, ассоциированная с <strong>$param</strong>
  <info>int</info>       <strong>$max_length</strong>  Устанавливает максимальный размер данных. Если указать -1, функция будет
                         использовать текущий размер переменной <strong>$var</strong> в качестве максимального. При
                         этом переменная <strong>$var</strong> должна существовать и содержать данные во время вызова
                         <strong>oci_bind_by_name()</strong>.
  <info>int</info>       <strong>$type</strong>        Тип данных, к которому Oracle будет приводить значения. По умолчанию <strong>$type</strong>
                         имеет значение <info>SQLT_CHR</info>. Oracle приводит данные от данного типа к типу поля
                         (или типу переменной PL/SQL), если это возможно.
                         
                         Если необходимо прикрепить переменную абстрактного типа (LOB/ROWID/BFILE),
                         следует предварительно использовать <strong>oci_new_descriptor()</strong>. Параметр <strong>$length</strong>
                         не используется для абстрактных типов и должен быть установлен в -1.
                         
                         Допустимые значения параметра <strong>$type</strong>: <info>SQLT_BFILEE</info> или <info>OCI_B_BFILE</info>  - для
                         BFILE-объектов; <info>SQLT_CFILEE</info> или <info>OCI_B_CFILEE</info> - для CFILE-объектов;
                         <info>SQLT_CLOB</info> или <info>OCI_B_CLOB</info> - для CLOB-объектов; <info>SQLT_BLOB</info> или <info>OCI_B_BLOB</info> -
                         для BLOB-объектов; <info>SQLT_RDD</info> или <info>OCI_B_ROWID</info> - для ROWID-объектов; <info>SQLT_NTY</info>
                         или <info>OCI_B_NTY</info> - для именованных типов даты; <info>SQLT_INT</info> или <info>OCI_B_INT</info> - для
                         целых чисел; <info>SQLT_CHR</info> - для символов VARCHAR; <info>SQLT_BIN</info> или <info>OCI_B_BIN</info> - для
                         RAW-полей; <info>SQLT_LNG</info> - для LONG-полей; <info>SQLT_LBI</info> - для LONG RAW полей;
                         <info>SQLT_RSET</info> - для курсоров, созданных функцией <strong>oci_new_cursor()</strong>; <info>SQLT_BOL</info> или
                         <info>OCI_B_BOL</info> - для PL/SQL BOOLEAN (Требуется Oracle Database 12c)
                         
                         <info>SQLT_BFILEE</info> или <info>OCI_B_BFILE</info>  - для BFILE-объектов;
                         
                         <info>SQLT_CFILEE</info> или <info>OCI_B_CFILEE</info> - для CFILE-объектов;
                         
                         <info>SQLT_CLOB</info> или <info>OCI_B_CLOB</info> - для CLOB-объектов;
                         
                         <info>SQLT_BLOB</info> или <info>OCI_B_BLOB</info> - для BLOB-объектов;
                         
                         <info>SQLT_RDD</info> или <info>OCI_B_ROWID</info> - для ROWID-объектов;
                         
                         <info>SQLT_NTY</info> или <info>OCI_B_NTY</info> - для именованных типов даты;
                         
                         <info>SQLT_INT</info> или <info>OCI_B_INT</info> - для целых чисел;
                         
                         <info>SQLT_CHR</info> - для символов VARCHAR;
                         
                         <info>SQLT_BIN</info> или <info>OCI_B_BIN</info> - для RAW-полей;
                         
                         <info>SQLT_LNG</info> - для LONG-полей;
                         
                         <info>SQLT_LBI</info> - для LONG RAW полей;
                         
                         <info>SQLT_RSET</info> - для курсоров, созданных функцией <strong>oci_new_cursor()</strong>;
                         
                         <info>SQLT_BOL</info> или <info>OCI_B_BOL</info> - для PL/SQL BOOLEAN (Требуется Oracle Database 12c)

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_bind_array_by_name()</strong>
   * <strong>oci_parse()</strong>


id: oci_cancel
type: function
doc:
<comment>Description:</comment>
  Заканчивает процесс чтения из курсора
  
  Сбрасывает курсор, освобождая все связанные ресурсы и отменяет возможность читать из него.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Запрос OCI.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: oci_client_version
type: function
doc:
<comment>Description:</comment>
  Возвращает версию клиентской библиотеки
    
  
  Возвращает номер версии в виде строки клиентской C-библиотеки Oracle, с которой связан PHP.

<comment>Return:</comment>
  <info>string</info>  Возвращает номер версии в виде строки (<info>string</info>).

<comment>See Also:</comment>
   * <strong>oci_server_version()</strong>


id: oci_close
type: function
doc:
<comment>Description:</comment>
  Закрывает соединение с сервером Oracle
  
  Освобождает <strong>$connection</strong>. Соответствующее ему соединение с базой данных будет закрыто при
  отсутствии использующих его ресурсов и если оно было получено из функции <strong>oci_connect()</strong> или
  <strong>oci_new_connect()</strong>.
  
  Рекомендуется закрывать неиспользуемые более соединения, т.к. это освобождает ресурсы базы данных
  для других пользователей.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, полученный из функций <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong> или <strong>oci_new_connect()</strong>.

<comment>Return:</comment>
  <info>bool|null</info>  Возвращает <info>null</info> если oci8.old_oci_close_semantics включён или <info>true</info> в противном случае.

<comment>See Also:</comment>
   * <strong>oci_connect()</strong>
   * <strong>oci_free_statement()</strong>


id: oci_commit
type: function
doc:
<comment>Description:</comment>
  Подтверждает транзакцию базы данных
  
  Подтверждает транзакцию соединения <strong>$connection</strong>. Подтверждение завершает текущую транзакцию и
  делает все изменения постоянными. Она также освобождает все установленные блокировки.
  
  Транзакция начинается при первом SQL-запросе, изменяющим данные, который был запущен с помощью
  функции <strong>oci_execute()</strong> и флага <info>OCI_NO_AUTO_COMMIT</info>. Последующие изменения данных от других запросов
  также становятся частью данной транзакции. Изменения, сделанные в транзакции, являются временными
  до тех пор, пока транзакция не будет зафиксирована или пока не будет произведён её откат. Другие
  пользователи базы данных не смогут увидеть изменения до их подтверждения.
  
  При вставке или обновлении данных рекомендуется использовать транзакции для сохранения целостности
  данных и увеличения производительности.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, полученный из функций <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong> или <strong>oci_new_connect()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_execute()</strong>
   * <strong>oci_rollback()</strong>


id: oci_connect
type: function
doc:
<comment>Description:</comment>
  Устанавливает соединение с базой данных Oracle
  
  Возвращает идентификатор соединения, который используется большинством функций данного модуля.
  
  Для повышения производительности большинство приложений должны использовать постоянные соединения
  с помощью <strong>oci_pconnect()</strong> вместо <strong>oci_connect()</strong>. Смотрите Управление соединением для более детальной
  информации по управлению соединениями и создании пулов подключений.
  
  Второй и последующие вызовы функции <strong>oci_connect()</strong> с теми же параметрами вернут идентификатор уже
  открытого соединения. Это означает, что транзакции используют одно и то же базовое соединение с
  базой данных. При необходимости разделения транзакций рекомендуется использовать функцию
  <strong>oci_new_connect()</strong>.

<comment>Param:</comment>
  <info>string</info>       <strong>$username</strong>           Имя пользователя Oracle.
  <info>string</info>       <strong>$password</strong>           Пароль <strong>$username</strong>.
  <info>string|null</info>  <strong>$connection_string</strong>  Содержит
                                   <return>экземпляр Oracle</return> для подключения. Это может быть
                                   Easy Connect string, или Connect Name из файла
                                   tnsnames.ora, или имя локального экземпляра Oracle.
                                   
                                   Если не указано отдельно или <info>null</info>, PHP использует переменные
                                   окружения, такие как <info>TWO_TASK</info> (на Linux) или <info>LOCAL</info> (на Windows) и
                                   <info>ORACLE_SID</info> для определения <return>экземпляра Oracle</return> для соединения.
                                   
                                   Для использования метода Easy Connect, PHP должен быть слинкован
                                   с клиентскими библиотеками версии Oracle 10g или старше. Easy
                                   Connect string для Oracle 10g принимает следующую форму:
                                   [//]host_name[:port][/service_name]. Начиная с Oracle 11g
                                   синтаксис таков:
                                   [//]host_name[:port][/service_name][:server_type][/instance_name].
                                   В Oracle 19c были введены дополнительные параметры, включая
                                   настройки времени ожидания и проверки активности. Обратитесь к
                                   документации Oracle. Названия служб могут быть определены с
                                   помощью запуска Oracle утилиты <return>lsnrctl status</return> на сервере базы
                                   данных.
                                   
                                   Файл tnsnames.ora может находиться в поисковом пути Oracle Net,
                                   который включает /your/path/to/instantclient/network/admin,
                                   $ORACLE_HOME/network/admin и /etc. В качестве альтернативного
                                   варианта можно установить <return>TNS_ADMIN</return> таким образом, чтобы путь
                                   $TNS_ADMIN/tnsnames.ora был читаемым. Убедитесь, что веб-сервер
                                   имеет доступ к этому файлу.
  <info>string</info>       <strong>$encoding</strong>           Определяет кодировку, используемую клиентскими
                                   библиотеками Oracle. Данная кодировка не обязательно должна
                                   совпадать с кодировкой, используемой в самой базе данных.
                                   Если она не совпадает, Oracle сделает все возможное для
                                   конвертирования данных из- и в данную кодировку.
                                   В зависимости от используемых кодировок это может не всегда
                                   давать приемлемые результаты. Преобразование также
                                   создаёт некоторые дополнительные временные затраты.
                                   
                                   Если кодировка не указана, клиентские библиотеки Oracle будут
                                   определять её из переменной окружения <info>NLS_LANG</info>.
                                   
                                   Передача этого параметра может уменьшить время затрачиваемое на
                                   соединение.
  <info>int</info>          <strong>$session_mode</strong>       Этот параметр доступен начиная с версии PHP 5 (PECL OCI8 1.1) и
                                   принимает следующие значения: <info>OCI_DEFAULT</info>, <info>OCI_SYSOPER</info> и
                                   <info>OCI_SYSDBA</info>. Если были указаны <info>OCI_SYSOPER</info> или <info>OCI_SYSDBA</info>, данная
                                   функция попытается установить привилегированное соединение,
                                   используя внешние данные авторизации. По умолчанию
                                   привилегированные соединения отключены. Чтобы их включить,
                                   необходимо установить oci8.privileged_connect в <return>On</return>.
                                   
                                   В версии PHP 5.3 (PECL OCI8 1.3.4) появилось значение
                                   <info>OCI_CRED_EXT</info>. Оно указывает Oracle использовать внешнюю
                                   аутентификацию или аутентификацию с помощью операционной системы,
                                   что должно быть настроено в базе данных. Флаг <info>OCI_CRED_EXT</info> может
                                   быть использован только с именем пользователя "/" и пустым
                                   паролем. oci8.privileged_connect может принимать значение <return>On</return> или
                                   <return>Off</return>.
                                   
                                   <info>OCI_CRED_EXT</info> может использоваться совместно с режимами
                                   <info>OCI_SYSOPER</info> и  <info>OCI_SYSDBA</info>.
                                   
                                   <info>OCI_CRED_EXT</info> не поддерживается в Windows по причинам
                                   безопасности.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор соединения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_pconnect()</strong>
   * <strong>oci_new_connect()</strong>
   * <strong>oci_close()</strong>


id: oci_define_by_name
type: function
doc:
<comment>Description:</comment>
  Сопоставляет переменную PHP столбцу результата запроса
  
  Сопоставляет переменную PHP столбцу результата запроса, полученного с помощью <strong>oci_fetch()</strong>.
  
  Вызов <strong>oci_define_by_name()</strong> должен производиться до запуска <strong>oci_execute()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.
  <info>string</info>    <strong>$column</strong>     Имя столбца использованного в запросе.
                        
                        Используйте верхний регистр для стандартных регистронезависимых имён
                        столбцов Oracle. Используйте точное написание имени столбца для
                        регистрозависимых имён.
  <info>mixed</info>     <strong>$var</strong>        Переменная PHP, предназначенная для хранения возвращённого значения.
  <info>int</info>       <strong>$type</strong>       Тип возвращаемых данных. Обычно не требуется. Имейте ввиду, что
                        преобразования Oracle-данных не производятся. К примеру, <return>SQLT_INT</return> будет
                        проигнорировано и возвращённые данные будут по-прежнему в виде <return>SQLT_CHR</return>.
                        
                        Если вам нужно назначить переменную абстрактного типа данных
                        (LOB/ROWID/BFILE), то её необходимо сначала создать с помощью
                        <strong>oci_new_descriptor()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_fetch()</strong>
   * <strong>oci_new_descriptor()</strong>


id: oci_error
type: function
doc:
<comment>Description:</comment>
  Возвращает последнюю ошибку
  
  Возвращает последнюю найденную ошибку.
  
  Функция должна вызваться сразу же после появления ошибки. Ошибки очищаются при произведении
  правильного запроса.

<comment>Param:</comment>
  <info>resource|null</info>  <strong>$connection_or_statement</strong>  Для большинства ошибок параметром
                                           <strong>$connection_or_statement</strong> является соответствующий
                                           идентификатор соединения или выражения. Для ошибок во
                                           время выполнения функций <strong>oci_connect()</strong>, <strong>oci_new_connect()</strong>
                                           или <strong>oci_pconnect()</strong> следует передавать <info>null</info>.

<comment>Return:</comment>
  <info>array|false</info>  Если ошибок не найдено, то <strong>oci_error()</strong> возвращает <info>false</info>. В противном случае,
               <strong>oci_error()</strong> возвращает информацию об ошибке в виде ассоциативного массива.
               
               Описание массива вывода <strong>oci_error()</strong>Ключ массиваТипОписание<return>code</return><info>int</info> Номер ошибки
               Oracle. <return>message</return><info>string</info> Текст ошибки Oracle. <return>offset</return><info>int</info> Позиция ошибки в запросе SQL.
               Если нет запроса, то равна <return>0</return> <return>sqltext</return><info>string</info> Текст запроса SQL. Если нет запроса, то
               строка пуста.


id: oci_execute
type: function
doc:
<comment>Description:</comment>
  Выполняет подготовленное выражение
  
  Выполняет подготовленное выражение <strong>$statement</strong>, созданное с помощью функции <strong>oci_parse()</strong>.
  
  Сразу после выполнения выражения подобного <return>INSERT</return>, по умолчанию все данные сразу будут сохранены в
  базе данных. Для выражений подобных <return>SELECT</return>, выполняется только логика запроса. Результат же
  запроса можно получить позже в PHP с помощью функций подобных <strong>oci_fetch_array()</strong>.
  
  Каждое подготовленное выражение может быть выполнено несколько раз для экономии на издержках от
  повторной подготовки запроса. Это чаще всего применяется для выражений <return>INSERT</return>, когда к ним
  привязаны данные с помощью <strong>oci_bind_by_name()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Правильное подготовленное выражение OCI.
  <info>int</info>       <strong>$mode</strong>       Необязательный второй параметр с одним из следующих значений: Режим
                        выполненияКонстантаОписание<info>OCI_COMMIT_ON_SUCCESS</info>Автоматически сохранять все
                        несохраненные изменения, произведённые за текущую сессию в случае успешного
                        выполнения выражения. Этот режим установлен по
                        умолчанию.<info>OCI_DESCRIBE_ONLY</info>Делает доступными метаданные запроса для функций
                        подобных <strong>oci_field_name()</strong>, но не создаёт результат выполнения выражения.
                        Любое последующее получение данных, например с помощью <strong>oci_fetch_array()</strong> не
                        будет произведено.<info>OCI_NO_AUTO_COMMIT</info>Не сохранять автоматически изменения.
                        
                        Использование режима <info>OCI_NO_AUTO_COMMIT</info> открывает или продолжает транзакцию.
                        Эта транзакция автоматически откатывается при закрытии соединения или
                        завершении скрипта. Используйте <strong>oci_commit()</strong> для завершения транзакции и
                        <strong>oci_rollback()</strong> для её отмены.
                        
                        При вставке и обновлении данных рекомендуется использование транзакций для
                        реляционной целостности данных и для улучшения производительности.
                        
                        Если для какого-нибудь выражения используется режим <info>OCI_NO_AUTO_COMMIT</info>, и
                        впоследствии не используются <strong>oci_commit()</strong> или <strong>oci_rollback()</strong>, то OCI8 будет
                        выполнять откат при завершении скрипта даже если данные не были изменены.
                        Для избежания ненужных откатов большинство скриптов не используют режим
                        <info>OCI_NO_AUTO_COMMIT</info> для запросов или PL/SQL. Будьте внимательны, чтобы
                        обеспечить надлежащую согласованность транзакций при использовании
                        <strong>oci_execute()</strong> с различными режимами в одном скрипте.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_parse()</strong>


id: oci_fetch
type: function
doc:
<comment>Description:</comment>
  Выбирает следующую строку из результата в буфер
  
  Выбирает следующую строку из результата запроса во внутренний буфер, доступный с помощью
  <strong>oci_result()</strong> или через переменные, заранее определённые с помощью <strong>oci_define_by_name()</strong>.
  
  Смотрите <strong>oci_fetch_array()</strong> для более детальной информации о выборе данных.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info>, если в результате <strong>$statement</strong> больше
        нет рядов.

<comment>See Also:</comment>
   * <strong>oci_define_by_name()</strong>
   * <strong>oci_fetch_all()</strong>
   * <strong>oci_fetch_array()</strong>
   * <strong>oci_fetch_assoc()</strong>
   * <strong>oci_fetch_object()</strong>
   * <strong>oci_fetch_row()</strong>
   * <strong>oci_result()</strong>


id: oci_fetch_all
type: function
doc:
<comment>Description:</comment>
  Выбирает все строки из результата запроса в двумерный массив
  
  Выбирает все строки из результата запроса в двумерный массив. По умолчанию возвращает все строки.
  
  Эта функция может быть вызваться только один раз для каждого запроса запущенного с помощью
  <strong>oci_execute()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.
  <info>array</info>     <strong>$output</strong>     Переменная, содержащая возвращённые строки.
                        
                        LOB столбцы возвращаются в виде строк, для которых поддерживается Oracle
                        преобразования.
                        
                        Смотрите <strong>oci_fetch_array()</strong> для более детальной информации о том, как
                        производится выборка данных и типов.
  <info>int</info>       <strong>$offset</strong>     Число строк, которых необходимо исключить из выборки. По умолчанию равно 0,
                        выборка возвращается со следующего за первым ряда.
  <info>int</info>       <strong>$limit</strong>      Число возвращаемых строк. По умолчанию равно -1, что означает возврат всех
                        строк, начиная с указанных в <strong>$offset</strong> + 1 предыдущая строка.
  <info>int</info>       <strong>$flags</strong>      Параметр <strong>$flags</strong> содержит структуру массива отражает необходимость
                        использования ассоциативных массивов. Структура массива
                        <strong>oci_fetch_all()</strong>КонстантаОписание<info>OCI_FETCHSTATEMENT_BY_ROW</info>Массив будет
                        содержать по одному под-массиву на каждую строку
                        запроса.<info>OCI_FETCHSTATEMENT_BY_COLUMN</info>Массив будет содержать по одному
                        под-массиву на каждый столбец. Используется по умолчанию.
                        
                        Массивы могут быть проиндексированы или заголовками столбцов или
                        пронумерованы. Будет возвращён только один режим индексации. Индексация
                        массива <strong>oci_fetch_all()</strong>КонстантаОписание<info>OCI_NUM</info>Для массива каждого столбца
                        используются числовые индексы.<info>OCI_ASSOC</info> Для массива каждого столбца
                        используется ассоциативные индексы. По умолчанию.
                        
                        Используйте оператор сложения "+" для выбора определённой комбинации
                        структуры и индексации массива.
                        
                        Регистронезависимые (по умолчанию в Oracle) имена полей в результирующем
                        массиве будут иметь ассоциативные индексы в верхнем регистре.
                        Регистрозависимые имена полей будут иметь индексы с теми же регистрами
                        символов, что и само поле. Используйте <strong>var_dump()</strong> на <strong>$output</strong>, чтобы
                        проверить соответствие регистров символов для каждого запроса.
                        
                        В запросах в которых имеется несколько столбцов с одинаковыми именами
                        необходимо использовать псевдонимы. Иначе только один из столбцов появится в
                        ассоциативном массиве.

<comment>Return:</comment>
  <info>int</info>  Возвращает число столбцов в <strong>$output</strong>, который может принимать значение 0 или более.

<comment>See Also:</comment>
   * <strong>oci_fetch()</strong>
   * <strong>oci_fetch_array()</strong>
   * <strong>oci_fetch_assoc()</strong>
   * <strong>oci_fetch_object()</strong>
   * <strong>oci_fetch_row()</strong>
   * <strong>oci_set_prefetch()</strong>


id: oci_fetch_array
type: function
doc:
<comment>Description:</comment>
  Возвращает следующую строку из результата запроса в виде ассоциативного или нумерованного массива
    
  
  Возвращает массив, содержащий следующую строку результата запроса. Каждый элемент массива
  соответствует одному полю из строки. Эта функция обычно вызывается в цикле, пока она не вернёт
  <info>false</info>, который указывает на отсутствие последующих строк.
  
  Если <strong>$statement</strong> соответствует PL/SQL блоку, возвращаемому Oracle Database Implicit Result Sets,
  тогда будут последовательно извлечены ряды из всех наборов. Если <strong>$statement</strong> возвращается из
  <strong>oci_get_implicit_resultset()</strong>, тогда вернётся только часть рядов для одного дочернего запроса.
  
  За подробностями по операции отображения типов данных, осуществляемой модулем OCI8, обратитесь к
  типам данных, поддерживаемых драйвером

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.
                        
                        Также может быть идентификатором, возвращаемым функцией
                        <strong>oci_get_implicit_resultset()</strong>.
  <info>int</info>       <strong>$mode</strong>       Необязательный второй параметр может состоять из любой комбинации следующих
                        констант: <strong>oci_fetch_array()</strong> ModesКонстантаОписание<info>OCI_BOTH</info>Возвращает массив
                        как с ассоциативными и числовыми индексами. Эта константа то же самое что и
                        <info>OCI_ASSOC</info> + <info>OCI_NUM</info>, и она используется по умолчанию.<info>OCI_ASSOC</info>Возвращает
                        ассоциативный массив.<info>OCI_NUM</info>Возвращает нумерованный
                        массив.<info>OCI_RETURN_NULLS</info>Создаёт элементы для полей равных <info>null</info>. Значение
                        элемента будет равно PHP <info>null</info>. <info>OCI_RETURN_LOBS</info>Возвращает содержимое полей
                        типа LOB, вместо LOB указателя.
                        
                        По умолчанию <strong>$mode</strong> равен <info>OCI_BOTH</info>.
                        
                        Используйте оператор сложения "+" для указания более одного режима.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает массив с ассоциативными и/или числовыми ключами. Если больше нет строк в
               <strong>$statement</strong>, то возвращается <info>false</info>.
               
               По умолчанию, поля <return>LOB</return> возвращаются как указатели LOB.
               
               Поля типа <return>DATE</return> возвращаются в формате строк, соответствующем текущему формату даты.
               Формат по умолчанию может быть изменён с помощью переменных окружения Oracle, таких
               как <return>NLS_LANG</return>, или предварительным выполнением команды <return>ALTER SESSION SET
               NLS_DATE_FORMAT</return>.
               
               Регистронезависимые (по умолчанию в Oracle) имена полей будут иметь ассоциативные
               индексы в верхнем регистре в результирующем массиве. Регистрозависимые имена полей
               будут иметь индексы с теми же регистрами символов, что и само поле. Используйте
               <strong>var_dump()</strong> для результирующего массива, чтобы проверить соответствие регистров
               символов для каждого запроса.
               
               Имя таблицы не входит в ассоциативны индекс. Если ваш запрос содержит два разных поля
               с одинаковым именем, используйте <info>OCI_NUM</info> или добавьте алиас для поля в запрос, так
               чтобы имена стали уникальными (смотрите пример #7). Иначе будет возвращено только
               одно поле.

<comment>See Also:</comment>
   * <strong>oci_fetch()</strong>
   * <strong>oci_fetch_all()</strong>
   * <strong>oci_fetch_assoc()</strong>
   * <strong>oci_fetch_object()</strong>
   * <strong>oci_fetch_row()</strong>
   * <strong>oci_set_prefetch()</strong>


id: oci_fetch_assoc
type: function
doc:
<comment>Description:</comment>
  Возвращает следующую строку из результата запроса в виде
     ассоциативного массива
  
  Возвращает ассоциативный массив, содержащий следующую строку из результата выполнения запроса.
  Каждый элемент массива соответствует столбцу текущей строки. Эта функция обычно вызывается в
  цикле, пока не возвращает <info>false</info>, если больше нет строк.
  
  Результат выполнения <strong>oci_fetch_assoc()</strong> идентичен выполнению <strong>oci_fetch_array()</strong> с флагом <info>OCI_ASSOC</info> +
  <info>OCI_RETURN_NULLS</info>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает ассоциативный массив. Если в результате запроса строк больше нет,
               возвращает <info>false</info>.

<comment>See Also:</comment>
   * <strong>oci_fetch()</strong>
   * <strong>oci_fetch_all()</strong>
   * <strong>oci_fetch_array()</strong>
   * <strong>oci_fetch_object()</strong>
   * <strong>oci_fetch_row()</strong>


id: oci_fetch_object
type: function
doc:
<comment>Description:</comment>
  Возвращает следующую строку из результата запроса в виде
     объекта
  
  Возвращает объект, содержащий следующую строку из результата запроса. Имена свойств объекта
  соответствуют именам столбцов в строке. Эта функция обычно вызывается в цикле пока не возвращает
  <info>false</info> когда больше нет рядов.
  
  За подробностями по операции отображения типов данных, осуществляемой модулем OCI8, обратитесь к
  типам данных, поддерживаемых драйвером

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.

<comment>Return:</comment>
  <info>stdClass|false</info>  Возвращает объект. Каждое свойство объекта соответствуют именам столбцов в строке.
                  Если в результате <strong>$запроса</strong> больше нет рядов, то возвращает <info>false</info>.
                  
                  Любой столбец <return>LOB</return> возвращается как дескриптор LOB.
                  
                  Столбцы <return>DATE</return> возвращаются в виде строк, форматированных в соответствии с текущим
                  форматов даты. Стандартный формат может быть изменён с помощью переменных
                  окружения Oracle, таких как <return>NLS_LANG</return> или с помощью предварительно запущенной <return>ALTER
                  SESSION SET NLS_DATE_FORMAT</return> команды.
                  
                  Вам не следует забывать о том, что Oracle возвращает имена полей в ВЕРХНЕМ
                  регистре, поэтому имена атрибутов объекта будут также в ВЕРХНЕМ регистре.
                  Используйте функцию <strong>var_dump()</strong> по отношению к полученному объекту для доступа к
                  атрибутам.
                  
                  Значения атрибутов соответствуют <info>null</info> для любых <return>NULL</return> полей.

<comment>See Also:</comment>
   * <strong>oci_fetch()</strong>
   * <strong>oci_fetch_all()</strong>
   * <strong>oci_fetch_assoc()</strong>
   * <strong>oci_fetch_array()</strong>
   * <strong>oci_fetch_row()</strong>


id: oci_fetch_row
type: function
doc:
<comment>Description:</comment>
  Возвращает следующую строку из результата запроса в виде
     нумерованного массива
  
  Возвращает нумерованный массив, содержащий следующую строку из результата запроса. Каждый массив
  соответствует столбцу строки. Эта функция обычно вызывается в цикле пока не возвращает <info>false</info>, если
  в результате запроса больше нет строк.
  
  Вызов <strong>oci_fetch_row()</strong> аналогичен вызову <strong>oci_fetch_array()</strong> с флагом <info>OCI_NUM</info> + <info>OCI_RETURN_NULLS</info>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает нумерованный массив. Если в <strong>$statement</strong> больше нет срок возвращает <info>false</info>.

<comment>See Also:</comment>
   * <strong>oci_fetch()</strong>
   * <strong>oci_fetch_all()</strong>
   * <strong>oci_fetch_array()</strong>
   * <strong>oci_fetch_assoc()</strong>
   * <strong>oci_fetch_object()</strong>


id: oci_field_is_null
type: function
doc:
<comment>Description:</comment>
  Проверяет, равняется ли поле в текущем полученном ряду равным null
  
  Проверяет, является ли значение, переданное в поле <strong>$column</strong> из текущего ряда <strong>$statement</strong> равным
  <info>null</info>.

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Идентификатор допустимого OCI запроса.
  <info>string|int</info>  <strong>$column</strong>     Может быть порядковый номер поля (начиная с 1) или имя поля.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если <strong>$column</strong> равен <info>null</info>, и <info>false</info> если нет.


id: oci_field_name
type: function
doc:
<comment>Description:</comment>
  Возвращает имя поля из результата запроса
  
  Возвращает имя поля <strong>$column</strong> из результата запроса.

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Идентификатор допустимого OCI запроса.
  <info>string|int</info>  <strong>$column</strong>     Может быть номером поля (нумерация начинается с 1) или именем.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает имя в виде строки или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_num_fields()</strong>
   * <strong>oci_field_type()</strong>
   * <strong>oci_field_size()</strong>


id: oci_field_precision
type: function
doc:
<comment>Description:</comment>
  Возвращает точность поля
  
  Возвращает точность поля <strong>$column</strong>.
  
  Для полей типа FLOAT точность больше нуля, а масштаб равен -127. Если точность поля равна нулю, то
  тип поля - NUMBER. Иначе же, тип поля может быть описан как NUMBER(precision, scale).

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Идентификатор допустимого OCI запроса.
  <info>string|int</info>  <strong>$column</strong>     Может быть номером поля (нумерация начинается с 1) или именем.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает точность в виде числа или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_field_scale()</strong>
   * <strong>oci_field_type()</strong>


id: oci_field_scale
type: function
doc:
<comment>Description:</comment>
  Возвращает масштаб поля
  
  Возвращает масштаб поля под номером <strong>$column</strong>.
  
  Для полей типа FLOAT точность, получаемая с помощью <strong>oci_field_precision()</strong>, больше нуля, а масштаб
  равен -127. Если точность поля равна нулю, то тип поля - NUMBER. Иначе же, тип поля может быть
  описан как NUMBER(precision, scale).

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Идентификатор допустимого OCI запроса.
  <info>string|int</info>  <strong>$column</strong>     Может быть номером поля (нумерация начинается с 1) или именем.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает масштаб в виде числа или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_field_precision()</strong>
   * <strong>oci_field_type()</strong>


id: oci_field_size
type: function
doc:
<comment>Description:</comment>
  Возвращает размер поля
  
  Возвращает размер поля <strong>$column</strong>.

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Идентификатор допустимого OCI запроса.
  <info>string|int</info>  <strong>$column</strong>     Может быть номером поля (нумерация начинается с 1) или именем.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает размер поля <strong>$column</strong> в байтах или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_num_fields()</strong>
   * <strong>oci_field_name()</strong>


id: oci_field_type
type: function
doc:
<comment>Description:</comment>
  Возвращает имя типа поля
  
  Возвращает имя типа поля.

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Допустимый идентификатор OCI-выражения.
  <info>string|int</info>  <strong>$column</strong>     Может быть задано индексом (начиная с 1) или по имени.

<comment>Return:</comment>
  <info>string|int|false</info>  Возвращает тип поля как строку (<info>string</info>) или как целое число (<info>int</info>) или <info>false</info> в
                    случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_num_fields()</strong>
   * <strong>oci_field_name()</strong>
   * <strong>oci_field_size()</strong>


id: oci_field_type_raw
type: function
doc:
<comment>Description:</comment>
  Возвращает исходный тип поля Oracle
  
  Возвращает тип "SQLT" Oracle поля <strong>$column</strong>.
  
  Если вы хотите получить тип поля, то <strong>oci_field_type()</strong> подойдёт вам больше.

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Идентификатор допустимого OCI запроса.
  <info>string|int</info>  <strong>$column</strong>     Может быть номером поля (нумерация начинается с 1) или именем.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает исходный тип Oracle в виде числа или <info>false</info> в случае возникновения ошибки.


id: oci_free_descriptor
type: function
doc:
<comment>Description:</comment>
  Освобождает дескриптор
  
  Освобождает дескриптор, созданный с помощью <strong>oci_new_descriptor()</strong>.

<comment>Param:</comment>
  <info></info>  <strong>$descriptor</strong>  Дескриптор, созданный с помощью <strong>oci_new_descriptor()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * OCILOB::free


id: oci_free_statement
type: function
doc:
<comment>Description:</comment>
  Освобождает ресурсы, занимаемые курсором или SQL-выражением
  
  Освобождает все ресурсы, занимаемые курсором или SQL-выражением, которое было возвращено функцией
  <strong>oci_parse()</strong> или получено от сервера Oracle.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Допустимый идентификатор OCI-выражения.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: oci_get_implicit_resultset
type: function
doc:
<comment>Description:</comment>
  Возвращает следующий ресурс дочернего запроса из ресурса родительского запроса, имеющего неявные
  результирующие наборы Oracle Database
    
  
  Используется для выборки последовательных наборов результатов запроса после выполнения хранимого
  или анонимного блока Oracle PL / SQL, когда этот блок возвращает результаты запроса Oracle
  Database 12 (или новее) с помощью PL/SQL функции DBMS_SQL.RETURN_RESULT. Это позволят блокам
  PL/SQL возвращать результаты запроса.
  
  Дочерний запрос может быть использован с любой извлекающей функцией OCI8: <strong>oci_fetch()</strong>,
  <strong>oci_fetch_all()</strong>, <strong>oci_fetch_array()</strong>, <strong>oci_fetch_object()</strong>, <strong>oci_fetch_assoc()</strong> или <strong>oci_fetch_row()</strong>
  
  Дочерний запрос наследует родительское значение предвыборки, либо можно указать его явно с помощью
  <strong>oci_set_prefetch()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор запроса OCI8, созданный с помощью <strong>oci_parse()</strong> и
                        запущенный с помощью <strong>oci_execute()</strong>.  Идентификатор запроса может быть, а
                        может и не быть связан с SQL-запросом, который возвращает неявные
                        результирующие наборы (Implicit Result Set).

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает обработчик запроса для следующего доступного для <strong>$statement</strong> дочернего
                  запроса. Возвращает <info>false</info> если такового нет или все дочерние запросы уже были
                  возвращены предыдущими вызовами <strong>oci_get_implicit_resultset()</strong>.


id: oci_internal_debug
type: function
doc:
<comment>Description:</comment>
  Включает или отключает внутренний вывод отладки
  
  Включает или отключает внутренний вывод отладки.

<comment>Param:</comment>
  <info>bool</info>  <strong>$onoff</strong>  Установите значение <info>false</info> для отключения вывода отладки или <info>true</info>, чтобы включить.

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.


id: oci_lob_copy
type: function
doc:
<comment>Description:</comment>
  Копирует объект LOB
  
  Копирует содержание или часть содержания объекта LOB в другой объект LOB. Содержимое объекта LOB,
  в который производится копирование, перезаписывается.
  
  Если необходимо скопировать определённую часть объекта, то для этого можно использовать
  <strong>OCILob::seek()</strong>, чтобы передвинуть внутренние указатели объектов на нужные позиции.

<comment>Param:</comment>
  <info>OCILob</info>    <strong>$to</strong>      LOB объект назначения.
  <info>OCILob</info>    <strong>$from</strong>    Копируемый объект LOB.
  <info>int|null</info>  <strong>$length</strong>  Длина участка содержимого для копирования.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: oci_lob_is_equal
type: function
doc:
<comment>Description:</comment>
  Сравнивает два объекта LOB/FILE
  
  Сравнивает два объекта LOB/FILE.

<comment>Param:</comment>
  <info>OCILob</info>  <strong>$lob1</strong>  Идентификатор LOB.
  <info>OCILob</info>  <strong>$lob2</strong>  Идентификатор LOB.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если объекты идентичны, и <info>false</info> в обратном случае или в случае
        возникновения ошибки.


id: oci_new_collection
type: function
doc:
<comment>Description:</comment>
  Создаёт новый объект коллекции
  
  Создаёт новый объект коллекции.

<comment>Param:</comment>
  <info>resource</info>     <strong>$connection</strong>  Идентификатор соединения с сервером Oracle, возвращаемый функцией
                            <strong>oci_connect()</strong> или <strong>oci_pconnect()</strong>.
  <info>string</info>       <strong>$type_name</strong>   Должен быть корректным именем типа (в верхнем регистре).
  <info>string|null</info>  <strong>$schema</strong>      Должна быть указана схема данных, где создан именованный тип. Если
                            передано значение <info>null</info>, указывается имя пользователя в качестве имени
                            схемы.

<comment>Return:</comment>
  <info>OCICollection|false</info>  Возвращает новый объект <class>OCICollection</class> или <info>false</info> в случае возникновения
                       ошибки.


id: oci_new_connect
type: function
doc:
<comment>Description:</comment>
  Устанавливает новое соединение с сервером Oracle
  
  Создаёт новое соединение с сервером Oracle и выполняет вход.
  
  В отличие от <strong>oci_connect()</strong> и <strong>oci_pconnect()</strong>, функция <strong>oci_new_connect()</strong> не кеширует соединения и
  при каждом вызове устанавливает новое соединение. Это полезно, если приложению необходима
  транзакционная изоляция двух наборов запросов.

<comment>Param:</comment>
  <info>string</info>       <strong>$username</strong>           Имя пользователя Oracle.
  <info>string</info>       <strong>$password</strong>           Пароль пользователя <strong>$username</strong>.
  <info>string|null</info>  <strong>$connection_string</strong>  Содержит
                                   <return>экземпляр Oracle</return> для подключения. Это может быть
                                   Easy Connect string, или Connect Name из файла
                                   tnsnames.ora, или имя локального экземпляра Oracle.
                                   
                                   Если не указано отдельно или <info>null</info>, PHP использует переменные
                                   окружения, такие как <info>TWO_TASK</info> (на Linux) или <info>LOCAL</info> (на Windows) и
                                   <info>ORACLE_SID</info> для определения <return>экземпляра Oracle</return> для соединения.
                                   
                                   Для использования метода Easy Connect, PHP должен быть слинкован
                                   с клиентскими библиотеками версии Oracle 10g или старше. Easy
                                   Connect string для Oracle 10g принимает следующую форму:
                                   [//]host_name[:port][/service_name]. Начиная с Oracle 11g
                                   синтаксис таков:
                                   [//]host_name[:port][/service_name][:server_type][/instance_name].
                                   В Oracle 19c были введены дополнительные параметры, включая
                                   настройки времени ожидания и проверки активности. Обратитесь к
                                   документации Oracle. Названия служб могут быть определены с
                                   помощью запуска Oracle утилиты <return>lsnrctl status</return> на сервере базы
                                   данных.
                                   
                                   Файл tnsnames.ora может находиться в поисковом пути Oracle Net,
                                   который включает /your/path/to/instantclient/network/admin,
                                   $ORACLE_HOME/network/admin и /etc. В качестве альтернативного
                                   варианта можно установить <return>TNS_ADMIN</return> таким образом, чтобы путь
                                   $TNS_ADMIN/tnsnames.ora был читаемым. Убедитесь, что веб-сервер
                                   имеет доступ к этому файлу.
  <info>string</info>       <strong>$encoding</strong>           Определяет кодировку, используемую клиентскими
                                   библиотеками Oracle. Данная кодировка не обязательно должна
                                   совпадать с кодировкой, используемой в самой базе данных.
                                   Если она не совпадает, Oracle сделает все возможное для
                                   конвертирования данных из- и в данную кодировку.
                                   В зависимости от используемых кодировок это может не всегда
                                   давать приемлемые результаты. Преобразование также
                                   создаёт некоторые дополнительные временные затраты.
                                   
                                   Если кодировка не указана, клиентские библиотеки Oracle будут
                                   определять её из переменной окружения <info>NLS_LANG</info>.
                                   
                                   Передача этого параметра может уменьшить время затрачиваемое на
                                   соединение.
  <info>int</info>          <strong>$session_mode</strong>       Этот параметр доступен начиная с версии PHP 5 (PECL OCI8 1.1) и
                                   принимает следующие значения: <info>OCI_DEFAULT</info>, <info>OCI_SYSOPER</info> и
                                   <info>OCI_SYSDBA</info>. Если были указаны <info>OCI_SYSOPER</info> или <info>OCI_SYSDBA</info>, данная
                                   функция попытается установить привилегированное соединение,
                                   используя внешние данные авторизации. По умолчанию
                                   привилегированные соединения отключены. Чтобы их включить,
                                   необходимо установить oci8.privileged_connect в <return>On</return>.
                                   
                                   В версии PHP 5.3 (PECL OCI8 1.3.4) появилось значение
                                   <info>OCI_CRED_EXT</info>. Оно указывает Oracle использовать внешнюю
                                   аутентификацию или аутентификацию с помощью операционной системы,
                                   что должно быть настроено в базе данных. Флаг <info>OCI_CRED_EXT</info> может
                                   быть использован только с именем пользователя "/" и пустым
                                   паролем. oci8.privileged_connect может принимать значение <return>On</return> или
                                   <return>Off</return>.
                                   
                                   <info>OCI_CRED_EXT</info> может использоваться совместно с режимами
                                   <info>OCI_SYSOPER</info> и  <info>OCI_SYSDBA</info>.
                                   
                                   <info>OCI_CRED_EXT</info> не поддерживается в Windows по причинам
                                   безопасности.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор соединения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_connect()</strong>
   * <strong>oci_pconnect()</strong>


id: oci_new_cursor
type: function
doc:
<comment>Description:</comment>
  Возвращает идентификатор созданного курсора
  
  Создаёт новый курсор для указанного соединения и возвращает его идентификатор.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения с сервером Oracle, возвращаемый функцией
                         <strong>oci_connect()</strong> или <strong>oci_pconnect()</strong>.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает указатель на новое выражение или <info>false</info> в случае возникновения ошибки.


id: oci_new_descriptor
type: function
doc:
<comment>Description:</comment>
  Инициализирует новый дескриптор объекта LOB или FILE
  
  Резервирует ресурсы, необходимые для хранения дескриптора объекта или LOB-локатора.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения с сервером Oracle, возвращаемый функцией
                         <strong>oci_connect()</strong> или <strong>oci_pconnect()</strong>.
  <info>int</info>       <strong>$type</strong>        Допустимые значения параметра <strong>$type</strong>: <info>OCI_DTYPE_FILE</info>, <info>OCI_DTYPE_LOB</info> и
                         <info>OCI_DTYPE_ROWID</info>.

<comment>Return:</comment>
  <info>OCILob|null</info>  Возвращает новый LOB или дескриптор FILE в случае успешного выполнения или <info>null</info> в
               случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_bind_by_name()</strong>


id: oci_num_fields
type: function
doc:
<comment>Description:</comment>
  Возвращает количество полей в результате запроса
  
  Получает число столбцов в запросе, заданном в <strong>$statement</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор допустимого OCI запроса.

<comment>Return:</comment>
  <info>int</info>  Возвращает число затронутых строк в виде целого числа (<info>int</info>).


id: oci_num_rows
type: function
doc:
<comment>Description:</comment>
  Возвращает количество строк, изменённых в процессе выполнения
     запроса
  
  Возвращает число строк, затронутых в процессе выполнения запроса.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор допустимого OCI запроса.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает число затронутых строк в виде integer или <info>false</info> в случае возникновения
             ошибки


id: oci_parse
type: function
doc:
<comment>Description:</comment>
  Подготавливает запрос к выполнению
  
  Подготавливает <strong>$sql</strong> к выполнению, используя соединение <strong>$connection</strong> и возвращает идентификатор
  выражения, который может быть далее использован функциями<strong>oci_bind_by_name()</strong>,<strong>oci_execute()</strong> и
  другими.
  
  Идентификаторы выражений могут быть освобождены функцией <strong>oci_free_statement()</strong> или установкой
  переменной в <info>null</info>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, полученный из функций <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong> или <strong>oci_new_connect()</strong>.
  <info>string</info>    <strong>$sql</strong>         Запрос SQL или PL/SQL.
                         
                         SQL-запросы не должны заканчиваться точкой с запятой (";"). PL/SQL-запросы
                         должны оканчиваться точкой с запятой (";").

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает дескриптор выражения в случае успешного выполнения или <info>false</info> в случае
                  возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_execute()</strong>
   * <strong>oci_free_statement()</strong>


id: oci_password_change
type: function
doc:
<comment>Description:</comment>
  Изменяет пароль пользователя Oracle
  
  Изменяет пароль пользователя, указанного в <strong>$username</strong>.
  
  Функция <strong>oci_password_change()</strong> особенно полезна для скриптов PHP командной строки или при
  использовании непостоянных соединений во всем приложении PHP.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>     Идентификатор соединения, возвращаемый функцией <strong>oci_connect()</strong> или
                            <strong>oci_pconnect()</strong>.
  <info>string</info>    <strong>$username</strong>       Имя пользователя Oracle.
  <info>string</info>    <strong>$old_password</strong>   Старый пароль.
  <info>string</info>    <strong>$new_password</strong>   Новый пароль.
  <info>string</info>    <strong>$database_name</strong>  Имя базы данных.

<comment>Return:</comment>
  <info>bool</info>  Если указан параметр <strong>$database_name</strong>, <strong>oci_password_change()</strong> возвращает <info>true</info> в случае
        успешного выполнения или <info>false</info> в случае возникновения ошибки. Если указан параметр
        <strong>$connection</strong>, <strong>oci_password_change()</strong> возвращает ресурс соединения в случае успешного
        выполнения или <info>false</info> в случае возникновения ошибки.


id: oci_pconnect
type: function
doc:
<comment>Description:</comment>
  Устанавливает постоянное соединение с сервером Oracle
  
  Создаёт постоянное соединение с сервером Oracle и выполняет аутентификацию.
  
  Постоянные соединения кешируются и повторно используются при следующих запросах, в результате
  снижаются накладные расходы при каждой загрузке страницы; типичное приложение PHP имеет одно
  постоянное подключение к серверу PHP, реализованное дочерним процессом Apache (или процессом PHP
  FPM). Дополнительную информацию смотрите в разделе Работа с соединениями OCI8 и Connection
  Pooling.

<comment>Param:</comment>
  <info>string</info>       <strong>$username</strong>           Имя пользователя Oracle.
  <info>string</info>       <strong>$password</strong>           Пароль пользователя <strong>$username</strong>.
  <info>string|null</info>  <strong>$connection_string</strong>  Содержит
                                   <return>экземпляр Oracle</return> для подключения. Это может быть
                                   Easy Connect string, или Connect Name из файла
                                   tnsnames.ora, или имя локального экземпляра Oracle.
                                   
                                   Если не указано отдельно или <info>null</info>, PHP использует переменные
                                   окружения, такие как <info>TWO_TASK</info> (на Linux) или <info>LOCAL</info> (на Windows) и
                                   <info>ORACLE_SID</info> для определения <return>экземпляра Oracle</return> для соединения.
                                   
                                   Для использования метода Easy Connect, PHP должен быть слинкован
                                   с клиентскими библиотеками версии Oracle 10g или старше. Easy
                                   Connect string для Oracle 10g принимает следующую форму:
                                   [//]host_name[:port][/service_name]. Начиная с Oracle 11g
                                   синтаксис таков:
                                   [//]host_name[:port][/service_name][:server_type][/instance_name].
                                   В Oracle 19c были введены дополнительные параметры, включая
                                   настройки времени ожидания и проверки активности. Обратитесь к
                                   документации Oracle. Названия служб могут быть определены с
                                   помощью запуска Oracle утилиты <return>lsnrctl status</return> на сервере базы
                                   данных.
                                   
                                   Файл tnsnames.ora может находиться в поисковом пути Oracle Net,
                                   который включает /your/path/to/instantclient/network/admin,
                                   $ORACLE_HOME/network/admin и /etc. В качестве альтернативного
                                   варианта можно установить <return>TNS_ADMIN</return> таким образом, чтобы путь
                                   $TNS_ADMIN/tnsnames.ora был читаемым. Убедитесь, что веб-сервер
                                   имеет доступ к этому файлу.
  <info>string</info>       <strong>$encoding</strong>           Определяет кодировку, используемую клиентскими
                                   библиотеками Oracle. Данная кодировка не обязательно должна
                                   совпадать с кодировкой, используемой в самой базе данных.
                                   Если она не совпадает, Oracle сделает все возможное для
                                   конвертирования данных из- и в данную кодировку.
                                   В зависимости от используемых кодировок это может не всегда
                                   давать приемлемые результаты. Преобразование также
                                   создаёт некоторые дополнительные временные затраты.
                                   
                                   Если кодировка не указана, клиентские библиотеки Oracle будут
                                   определять её из переменной окружения <info>NLS_LANG</info>.
                                   
                                   Передача этого параметра может уменьшить время затрачиваемое на
                                   соединение.
  <info>int</info>          <strong>$session_mode</strong>       Этот параметр доступен начиная с версии PHP 5 (PECL OCI8 1.1) и
                                   принимает следующие значения: <info>OCI_DEFAULT</info>, <info>OCI_SYSOPER</info> и
                                   <info>OCI_SYSDBA</info>. Если были указаны <info>OCI_SYSOPER</info> или <info>OCI_SYSDBA</info>, данная
                                   функция попытается установить привилегированное соединение,
                                   используя внешние данные авторизации. По умолчанию
                                   привилегированные соединения отключены. Чтобы их включить,
                                   необходимо установить oci8.privileged_connect в <return>On</return>.
                                   
                                   В версии PHP 5.3 (PECL OCI8 1.3.4) появилось значение
                                   <info>OCI_CRED_EXT</info>. Оно указывает Oracle использовать внешнюю
                                   аутентификацию или аутентификацию с помощью операционной системы,
                                   что должно быть настроено в базе данных. Флаг <info>OCI_CRED_EXT</info> может
                                   быть использован только с именем пользователя "/" и пустым
                                   паролем. oci8.privileged_connect может принимать значение <return>On</return> или
                                   <return>Off</return>.
                                   
                                   <info>OCI_CRED_EXT</info> может использоваться совместно с режимами
                                   <info>OCI_SYSOPER</info> и  <info>OCI_SYSDBA</info>.
                                   
                                   <info>OCI_CRED_EXT</info> не поддерживается в Windows по причинам
                                   безопасности.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор подключения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_connect()</strong>
   * <strong>oci_new_connect()</strong>


id: oci_register_taf_callback
type: function
doc:
<comment>Description:</comment>
  Регистрирует пользовательскую функцию обратного вызова для Oracle Database TAF
  
  Регистрирует пользовательскую функцию обратного вызова для соединения <strong>$connection</strong>. Если соединение
  <strong>$connection</strong> оборвалось из-за проблем с БД или сетью, будет произведено несколько запусков
  зарегистрированной функции в процессе восстановления. Более подробно читайте OCI8 Transparent
  Application Failover (TAF) Support .
  
  Каждый новый вызов <strong>oci_register_taf_callback()</strong> будет затирать предыдущие регистрации.
  
  Для явного удаления регистрации используйте функцию <strong>oci_unregister_taf_callback()</strong>.
  
  Регистрация функции обратного вызова НЕ сохраняется для постоянных соединений, следовательно при
  каждом новом постоянном соединении её необходимо перерегистрировать.

<comment>Param:</comment>
  <info>resource</info>       <strong>$connection</strong>  Идентификатор соединения Oracle.
  <info>callable|null</info>  <strong>$callback</strong>    Пользовательская функция для регистрации для Oracle TAF. Может быть
                              как строкой с именем функции, так и замыканием (анонимной функцией).
                              
                              Интерфейс функции следующий:
                              
                              Описание параметров и примеры смотрите на странице  OCI8 Transparent
                              Application Failover (TAF) Support.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_unregister_taf_callback()</strong>


id: oci_result
type: function
doc:
<comment>Description:</comment>
  Возвращает значение поля из результата запроса
  
  Возвращает данные поля <strong>$column</strong> текущей строки, возвращаемой функцией <strong>oci_fetch()</strong>.
  
  За подробностями по операции отображения типов данных, осуществляемой модулем OCI8, обратитесь к
  типам данных, поддерживаемых драйвером

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  
  <info>string|int</info>  <strong>$column</strong>     Может быть задано номером поля (начиная с 1), либо по имени. Регистр имени
                          поля должен быть таким же, как и у поля, описанного в метаданных Oracle,
                          которое всегда в верхнем регистре для полей, созданных
                          регистронезависимыми.

<comment>Return:</comment>
  <info>mixed</info>  Возвращает все значения в виде строки за исключением абстрактных типов (ROWIDs, LOBs и
         FILEs). Возвращает <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_fetch_array()</strong>
   * <strong>oci_fetch_assoc()</strong>
   * <strong>oci_fetch_object()</strong>
   * <strong>oci_fetch_row()</strong>
   * <strong>oci_fetch_all()</strong>


id: oci_rollback
type: function
doc:
<comment>Description:</comment>
  Откатывает транзакции, ожидающие обработки
  
  Данная функция откатывает все незафиксированные изменения соединения Oracle <strong>$connection</strong> и
  завершает транзакцию. Она также освобождает все установленные блокировки. Удаляются все Oracle
  <return>SAVEPOINTS</return>.
  
  Транзакция начинается при первом SQL-запросе, изменяющим данные, который был запущен с помощью
  функции <strong>oci_execute()</strong> и флага <info>OCI_NO_AUTO_COMMIT</info>. Последующие изменения данных от других запросов
  также становятся частью данной транзакции. Изменения, сделанные в транзакции, являются временными
  до тех пор, пока транзакция не будет зафиксирована или будет произведён её откат. Другие
  пользователи базы данных не смогут увидеть изменения до их фиксации.
  
  При вставке или обновлении данных рекомендуется использовать транзакции для сохранения целостности
  данных и увеличения производительности.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, полученный из функций <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong> или <strong>oci_new_connect()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_commit()</strong>
   * <strong>oci_execute()</strong>


id: oci_server_version
type: function
doc:
<comment>Description:</comment>
  Возвращает версию сервера Oracle
  
  Возвращает строку с информацией о версии сервера Oracle и доступных опциях

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  

<comment>Return:</comment>
  <info>string|false</info>  Возвращает в виде строки информацию о версии или <info>false</info> в случае возникновения
                ошибки.

<comment>See Also:</comment>
   * <strong>oci_client_version()</strong>


id: oci_set_action
type: function
doc:
<comment>Description:</comment>
  Задаёт имя для действия
    
  
  Присваивает имя действию для трассировки Oracle.
  
  Присвоенное имя регистрируется в базе данных во время очередного запроса от PHP, например, когда
  запускается SQL выражение.
  
  Имя действия может быть извлечено из административных представлений (view) базы данных, таких как
  <return>V$SESSION</return>. Его можно использовать для трассировки и мониторинга, например, с помощью <return>V$SQLAREA</return> и
  <return>DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE</return>.
  
  Значение можно устанавливать и через постоянные соединения.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, возвращаемый <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong>, или <strong>oci_new_connect()</strong>.
  <info>string</info>    <strong>$action</strong>      Задаваемая пользователем строка до 32 байт.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_set_module_name()</strong>
   * <strong>oci_set_client_info()</strong>
   * <strong>oci_set_client_identifier()</strong>
   * <strong>oci_set_db_operation()</strong>


id: oci_set_call_timeout
type: function
doc:
<comment>Description:</comment>
  Устанавливает время ожидания в миллисекундах для вызовов базы данных
  
  Устанавливает время ожидания, ограничивающее максимальное время кругового пути (round-trip) базы
  данных при использовании этого подключения.
  
  Каждая операция OCI8 может выполнять ноль или более вызовов к клиентской библиотеки Oracle. Затем
  эти внутренние вызовы могут привести к нулевому или большему количеству обращений к базе данных
  Oracle. Если какой-либо из этих циклических обходов занимает больше миллисекунд, чем указано в
  <return>time_out</return>, операция отменяется и приложению возвращается ошибка.
  
  Значение <return>time_out</return> применяется к каждому циклу в отдельности, а не к сумме всех циклов в оба конца.
  Время, затраченное на обработку в PHP OCI8 до или после завершения каждого циклического пути, не
  учитывается.
  
  При прерывании вызова Oracle попытается очистить соединение для повторного использования. Данная
  операция может быть запущена для другого периода <return>time_out</return>. В зависимости от результатов очистки
  подключение может использоваться повторно.
  
  При использовании постоянных соединений значение времени ожидания сохраняется в запросах PHP.
  
  Функция <strong>oci_set_call_timeout()</strong> доступна, когда OCI8 использует клиентские библиотеки Oracle 18
  (или более поздней версии).

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, возвращаемый <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong>, или <strong>oci_new_connect()</strong>.
  <info>int</info>       <strong>$timeout</strong>     Максимальное время в миллисекундах, которое может занять один циклический
                         путь (round-trip) между PHP и базой данных Oracle

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: oci_set_client_identifier
type: function
doc:
<comment>Description:</comment>
  Задаёт идентификатор клиента
    
  
  Устанавливает идентификатор клиента, используемый различными компонентами базы данных для
  идентификации различных пользователей тонких клиентов, которые авторизуются в базе данных как один
  пользователь.
  
  Идентификатор клиента регистрируется в базе данных во время очередного запроса от PHP, например,
  когда запускается SQL выражение.
  
  Идентификатор может быть извлечён, например с помощью <return>SELECT
  SYS_CONTEXT('USERENV','CLIENT_IDENTIFIER') FROM DUAL</return>. Административное представление базы данных,
  такое как <return>V$SESSION</return>, также содержит это значение. Его можно использовать совместно с
  <return>DBMS_MONITOR.CLIENT_ID_TRACE_ENABLE</return> для трассировки и аудита.
  
  Значение может сохраняться между запросами страниц, которые используют одно и то же постоянное
  соединение.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, возвращаемый <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong>, или <strong>oci_new_connect()</strong>.
  <info>string</info>    <strong>$client_id</strong>   Задаваемая пользователем строка до 64 байт.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_set_module_name()</strong>
   * <strong>oci_set_action()</strong>
   * <strong>oci_set_client_info()</strong>
   * <strong>oci_set_db_operation()</strong>


id: oci_set_client_info
type: function
doc:
<comment>Description:</comment>
  Задаёт информацию о клиенте
    
  
  Задет информацию о клиенте для трассировки Oracle.
  
  Информация о клиенте регистрируется в базе данных во время очередного запроса от PHP, например,
  когда запускается SQL выражение.
  
  Клиентская информация может быть извлечена из административных представлений (view) базы данных,
  таких как <return>V$SESSION</return>.
  
  Значение можно устанавливать и через постоянные соединения.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>   Идентификатор соединения Oracle, возвращаемый <strong>oci_connect()</strong>,
                          <strong>oci_pconnect()</strong>, или <strong>oci_new_connect()</strong>.
  <info>string</info>    <strong>$client_info</strong>  Задаваемая пользователем строка до 64 байт.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_set_module_name()</strong>
   * <strong>oci_set_action()</strong>
   * <strong>oci_set_client_identifier()</strong>
   * <strong>oci_set_db_operation()</strong>


id: oci_set_db_operation
type: function
doc:
<comment>Description:</comment>
  Задаёт операцию базы данных
  
  Устанавливает DBOP для трассировки Oracle.
  
  Имя операции базы данных регистрируется в базе данных при следующем "циклическом пути"
  (round-trip) из PHP в базу данных, как правило, при выполнении выражения SQL.
  
  Операция базы данных может впоследствии запрашиваться из представлений администрирования базы
  данных, таких как <return>V$SQL_MONITOR</return>.
  
  Функция <strong>oci_set_db_operation()</strong>  доступна, если oci8 использует клиентские библиотеки Oracle версии
  12 (или новее) и базу данных Oracle 12 (или новее).

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, возвращаемый <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong>, или <strong>oci_new_connect()</strong>.
  <info>string</info>    <strong>$action</strong>      Пользовательская строка.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_set_action()</strong>
   * <strong>oci_set_module_name()</strong>
   * <strong>oci_set_client_info()</strong>
   * <strong>oci_set_client_identifier()</strong>


id: oci_set_edition
type: function
doc:
<comment>Description:</comment>
  Задаёт выпуск (edition) базы данных
    
  
  Задаёт "серию" объектов для использования на нижестоящих соединениях.
  
  Подобные "выпуски" Oracle позволяют запускать приложения, использующие одинаковые схемы и имена
  объектов в конкурентном режиме. Это может быть полезным при модернизации работающих систем без их
  отключения.
  
  Вызывайте <strong>oci_set_edition()</strong> до вызова <strong>oci_connect()</strong>, <strong>oci_pconnect()</strong> или <strong>oci_new_connect()</strong>.
  
  Если заданный выпуск является недопустимым в базе данных, соединение не будет устанавливаться,
  даже если функция <strong>oci_set_edition()</strong> успешно выполнится.
  
  При использовании постоянных соединений, если соединение с данным значением серии уже существует,
  оно будет использовано повторно. В остальных случаях будет создаваться новое соединение.

<comment>Param:</comment>
  <info>string</info>  <strong>$edition</strong>  Имя "выпуска" базы данных Oracle, ранее созданное SQL командой "<return>CREATE EDITION</return>".

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: oci_set_module_name
type: function
doc:
<comment>Description:</comment>
  Задаёт имя модулю
    
  
  Задаёт имя модуля для трассировки Oracle.
  
  Имя модуля регистрируется в базе данных во время очередного запроса от PHP, например, когда
  запускается SQL выражение.
  
  Имя может быть извлечено из административных представлений (view) базы данных, таких как
  <return>V$SESSION</return>. Оно может использоваться для трассировки и мониторинга также, как <return>V$SQLAREA</return> and
  <return>DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE</return>.
  
  Значение можно устанавливать и через постоянные соединения.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle, возвращаемый <strong>oci_connect()</strong>,
                         <strong>oci_pconnect()</strong>, или <strong>oci_new_connect()</strong>.
  <info>string</info>    <strong>$name</strong>        Задаваемая пользователем строка <info>string</info> длиной до 48 байт.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_set_action()</strong>
   * <strong>oci_set_client_info()</strong>
   * <strong>oci_set_client_identifier()</strong>
   * <strong>oci_set_db_operation()</strong>


id: oci_set_prefetch
type: function
doc:
<comment>Description:</comment>
  Устанавливает количество строк, которые будут автоматически
     выбраны в буфер
  
  Устанавливает количество строк, которые будут выбраны в буфер клиентскими библиотеками Oracle
  сразу после удачного вызова <strong>oci_execute()</strong> и для каждого последующего внутреннего запроса данных к
  базе. Производительность может быть значительно увеличена для запросов, возвращающих большое
  количество строк, с помощью установки значения предварительной выборки больше значения по
  умолчанию oci8.default_prefetch.
  
  Предварительная выборка - это эффективный механизм Oracle, позволяющий возвращать больше одной
  строки результата из базы данных за каждый сетевой запрос. Это даёт более рациональное
  использование сети и процессора. Буферизация строк происходит внутри OCI8, поэтому поведение
  функций выборки OCI8 никак не зависит от размера предварительной выборки. Например,
  <strong>oci_fetch_row()</strong> всегда возвращает одну строку. Буфер предварительной выборки резервируется
  отдельно на каждый запрос и не используется второй раз в повторно запущенных запросах или в других
  соединениях.
  
  Перед вызовом <strong>oci_execute()</strong> вызовите <strong>oci_set_prefetch()</strong>.
  
  Смысл настройки размера предварительной выборки состоит в подборе удобного значения для передачи в
  сети и обработки в базе данных. Для запросов, возвращающих очень большое количество строк, общая
  производительность системы может быть лучше, если строки будут возвращаться в несколько приёмов
  (т.е. установить размер предварительной выборки меньше количества строк). Это позволит базе данных
  обрабатывать запросы других пользователей в течение обработки PHP-скриптом текущего результата
  запроса.
  
  Предварительная выборка запросов появилась в Oracle 8i. Предварительная выборка REF CURSOR
  появилась в Oracle 11gR2 и может быть применена в случае, если PHP слинкован с клиентскими
  библиотеками Oracle 11gR2 и старше. Предварительная выборка вложенных курсоров была добавлена в
  Oracle 11gR2 и требует наличия версии 11gR2 и старше как для клиентских библиотек Oracle, так и
  для используемой базы данных.
  
  Предварительная выборка не поддерживается, если запросы содержат LONG или LOB столбцы. Значение
  предварительной выборки игнорируется и, во всех ситуациях не поддерживающих предварительную
  выборку, будет использована построчная выборка.
  
  При использовании Oracle Database 12c, предварительная выборка заданная PHP может быть изменена
  конфигурационным файлом <return>oraaccess.xml</return> клиента Oracle. Обратитесь к документации Oracle за
  дополнительной информацией.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                        исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF CURSOR</return>.
  <info>int</info>       <strong>$rows</strong>       Количество строк предварительной выборки, &gt;= 0

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * 
     Директива oci8.default_prefetch
    


id: oci_set_prefetch_lob
type: function
doc:
<comment>Description:</comment>
  Устанавливает объём данных, предварительно выбираемых для каждого CLOB или BLOB
  
  Устанавливает размер внутреннего буфера, используемого для выборки каждого значения CLOB или BLOB,
  когда реализация получает внутренний локатор LOB Oracle из базы данных после успешного вызова
  запроса к функции <strong>oci_execute()</strong> и для каждого последующего внутреннего запроса выборки в базу
  данных. Увеличение этого значения может улучшить производительность выборки меньших LOB за счёт
  сокращения круговых обходов между PHP и базой данных. Использование памяти изменится.
  
  Значение влияет на большие объекты, возвращаемые как экземпляры OCILob, а также на те, которые
  возвращаются с использованием <info>OCI_RETURN_LOBS</info>.
  
  Функция <strong>oci_set_prefetch_lob()</strong> вызывается до вызова <strong>oci_execute()</strong>. Если функция не была вызвана,
  используется значение oci8.prefetch_lob_size.
  
  Значение предварительной выборки LOB следует устанавливать только в Oracle Database 12.2 или
  новее.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>          Корректный идентификатор выражения OCI8, полученный из <strong>oci_parse()</strong> и
                                исполненный функцией <strong>oci_execute()</strong>, или идентификатор выражения <return>REF
                                CURSOR</return>.
  <info>int</info>       <strong>$prefetch_lob_size</strong>  Число байтов каждого LOB, которое нужно предварительно выбрать,
                                &gt;= 0.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * 
     INI-опция oci8.prefetch_lob_size
    


id: oci_statement_type
type: function
doc:
<comment>Description:</comment>
  Возвращает тип выражения
  
  Возвращает выражение, соответствующее одному из типов параметра <strong>$statement</strong> OCI8.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Допустимый идентификатор оператора OCI8, возвращаемый <strong>oci_parse()</strong>.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает тип параметра <strong>$statement</strong>, который может быть одним из нижеследующих
                значений: Тип оператораВозвращаемое
                значениеПримечание<return>ALTER</return><return>BEGIN</return><return>CALL</return><return>CREATE</return><return>DECLARE</return><return>DELETE</return><return>DROP</return><return>INSERT</return><return>SELECT</return><return>UPDATE</return><return>UNKNOWN</return>
                
                Возвращает <info>false</info> в случае возникновения ошибки.


id: oci_unregister_taf_callback
type: function
doc:
<comment>Description:</comment>
  Удалить регистрацию пользовательской callback-функции для Oracle Database TAF
  
  Удаляет регистрацию пользовательской callback-функции, зарегистрированную для соединения
  <strong>$connection</strong> с помощью <strong>oci_register_taf_callback()</strong>. Более подробно читайте OCI8 Transparent
  Application Failover (TAF) Support .

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  Идентификатор соединения Oracle.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>oci_register_taf_callback()</strong>


id: ocibindbyname
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_bind_by_name
  
  Псевдоним <strong>oci_bind_by_name()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicancel
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_cancel
  
  Псевдоним <strong>oci_cancel()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicloselob
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCILob::close
  
  Псевдоним <strong>OCILob::close()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicollappend
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::append
  
  Псевдоним <strong>OCICollection::append()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicollassign
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::assign
  
  Псевдоним <strong>OCICollection::assign()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicollassignelem
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::assignElem
  
  Псевдоним <strong>OCICollection::assignElem()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicollgetelem
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::getElem
  
  Псевдоним <strong>OCICollection::getElem()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicollmax
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::max
  
  Псевдоним <strong>OCICollection::max()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicollsize
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::size
  
  Псевдоним <strong>OCICollection::size()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolltrim
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::trim
  
  Псевдоним <strong>OCICollection::trim()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolumnisnull
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_field_is_null
  
  Псевдоним <strong>oci_field_is_null()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolumnname
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_field_name
  
  Псевдоним <strong>oci_field_name()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolumnprecision
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_field_precision
  
  Псевдоним <strong>oci_field_precision()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolumnscale
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_field_scale
  
  Псевдоним <strong>oci_field_scale()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolumnsize
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_field_size
  
  Псевдоним <strong>oci_field_size()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolumntype
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_field_type
  
  Псевдоним <strong>oci_field_type()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicolumntyperaw
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_field_type_raw
  
  Псевдоним <strong>oci_field_type_raw()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocicommit
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_commit
  
  Псевдоним <strong>oci_commit()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocidefinebyname
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_define_by_name
  
  Псевдоним <strong>oci_define_by_name()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocierror
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_error
  
  Псевдоним <strong>oci_error()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociexecute
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_execute
  
  Псевдоним <strong>oci_execute()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocifetch
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_fetch
  
  Псевдоним <strong>oci_fetch()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocifetchinto
type: function
doc:
<comment>Description:</comment>
  Устаревший вариант функций oci_fetch_array, oci_fetch_object,
     oci_fetch_assoc и
     oci_fetch_row
  
  Устаревший вариант функций <strong>oci_fetch_array()</strong>, <strong>oci_fetch_object()</strong>, <strong>oci_fetch_assoc()</strong> и
  <strong>oci_fetch_row()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocifetchstatement
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_fetch_all
  
  Псевдоним <strong>oci_fetch_all()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocifreecollection
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCICollection::free
  
  Псевдоним <strong>OCICollection::free()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocifreecursor
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_free_statement
  
  Псевдоним <strong>oci_free_statement()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocifreedesc
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCILob::free
  
  Псевдоним <strong>OCILob::free()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociinternaldebug
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_internal_debug
  
  Псевдоним <strong>oci_internal_debug()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociloadlob
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCILob::load
  
  Псевдоним <strong>OCILob::load()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocilogoff
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_close
  
  Псевдоним <strong>oci_close()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocilogon
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_connect
  
  Псевдоним <strong>oci_connect()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocinewcollection
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_new_collection
  
  Псевдоним <strong>oci_new_collection()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocinewcursor
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_new_cursor
  
  Псевдоним <strong>oci_new_cursor()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocinewdescriptor
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_new_descriptor
  
  Псевдоним <strong>oci_new_descriptor()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocinlogon
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_new_connect
  
  Псевдоним <strong>oci_new_connect()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocinumcols
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_num_fields
  
  Псевдоним <strong>oci_num_fields()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociparse
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_parse
  
  Псевдоним <strong>oci_parse()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociplogon
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_pconnect
  
  Псевдоним <strong>oci_pconnect()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociresult
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_result
  
  Псевдоним <strong>oci_result()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocirollback
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_rollback
  
  Псевдоним <strong>oci_rollback()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocirowcount
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_num_rows
  
  Псевдоним <strong>oci_num_rows()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocisavelob
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCILob::save
  
  Псевдоним <strong>OCILob::save()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocisavelobfile
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCILob::import
  
  Псевдоним <strong>OCILob::import()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociserverversion
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_server_version
  
  Псевдоним <strong>oci_server_version()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocisetprefetch
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_set_prefetch
  
  Псевдоним <strong>oci_set_prefetch()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ocistatementtype
type: function
doc:
<comment>Description:</comment>
  Псевдоним oci_statement_type
  
  Псевдоним <strong>oci_statement_type()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociwritelobtofile
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCILob::export
  
  Псевдоним <strong>OCILob::export()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: ociwritetemporarylob
type: function
doc:
<comment>Description:</comment>
  Псевдоним OCILob::writeTemporary
  
  Псевдоним <strong>OCILob::writeTemporary()</strong>
  
  Этот псевдоним функции УСТАРЕЛ, начиная с PHP 5.4.0. Использование этого псевдонима крайне не
  рекомендуется.


id: octdec
type: function
doc:
<comment>Description:</comment>
  Переводит число из восьмеричной системы счисления в десятичную
  
  Возвращает десятичный эквивалент восьмеричного числа, указанного в аргументе <strong>$octal_string</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$octal_string</strong>  Восьмеричная строка для преобразования. Любые некорректные символы в
                         <strong>$octal_string</strong> игнорируются. Начиная с PHP 7.4.0, предоставление любых
                         некорректных символов устарело.

<comment>Return:</comment>
  <info>int|float</info>  Десятичное представление <strong>$octal_string</strong>

<comment>See Also:</comment>
   * <strong>decoct()</strong>
   * <strong>bindec()</strong>
   * <strong>hexdec()</strong>
   * <strong>base_convert()</strong>


id: odbc_autocommit
type: function
doc:
<comment>Description:</comment>
  Переключает поведение автоматической фиксации
  
  Переключает поведение автоматической фиксации.
  
  По умолчанию для подключения включена автоматическая фиксация. Отключение автоматической фиксации
  эквивалентно запуску транзакции.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>    Идентификатор соединения ODBC,
                     за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>bool</info>      <strong>$enable</strong>  Если <strong>$enable</strong> установлен <info>true</info>, автоматическая фиксация включена, если <info>false</info> -
                     автоматическая фиксация отключена.

<comment>Return:</comment>
  <info>int|bool</info>  Без параметра <strong>$enable</strong> функция возвращает статус автоматической фиксации для <strong>$odbc</strong>.
            Ненулевое значение возвращается, если автоматическая фиксация включена, 0 - если
            выключена и <info>false</info> в случае возникновения ошибки.
            
            Если задано значение <strong>$enable</strong>, функция возвращает <info>true</info> в случае успешного выполнения и
            <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>odbc_commit()</strong>
   * <strong>odbc_rollback()</strong>


id: odbc_binmode
type: function
doc:
<comment>Description:</comment>
  Управляет обработкой двоичных данных столбца
  
  Управляет обработкой двоичных данных столбца. Затрагиваемые типы ODBC SQL: <return>BINARY</return>, <return>VARBINARY</return> и
  <return>LONGVARBINARY</return>. Режим по умолчанию можно установить с помощью директивы php.ini
  uodbc.defaultbinmode.
  
  Когда двоичные данные SQL преобразуются в символьные данные C (<info>ODBC_BINMODE_CONVERT</info>), каждый байт
  (8 бит) исходных данных представляется в виде двух символов ASCII. Эти символы представляют собой
  символьное представление числа в формате ASCII в его шестнадцатеричной форме. Например, двоичное
  число <return>00000001</return> преобразуется в <return>"01"</return> , а <return>11111111</return> - в <return>"FF"</return>.
  
  Хотя обработка столбцов <return>BINARY</return> и <return>VARBINARY</return> зависит только от binmode, обработка столбцов
  <return>LONGVARBINARY</return> также зависит от longreadlen: Обработка
  LONGVARBINARYbinmodelongreadlenresult<info>ODBC_BINMODE_PASSTHRU</info>0passthru<info>ODBC_BINMODE_RETURN</info>0passthru<info>ODBC_BINMODE_CONVERT</info>0passthru<info>ODBC_BINMODE_PASSTHRU</info>&gt;0passthru<info>ODBC_BINMODE_RETURN</info>&gt;0вернуть
  как есть<info>ODBC_BINMODE_CONVERT</info>&gt;0вернуть в виде char
  
  Если используется <strong>odbc_fetch_into()</strong>, passthru означает, что для этих столбцов возвращается пустая
  строка. Если используется <strong>odbc_result()</strong>, passthru означает, что данные отправляются клиенту
  напрямую (т.е. печатаются).

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
                        
                        Если <strong>$statement</strong> равен <return>0</return>, настройки применяются по умолчанию для новых
                        результатов.
  <info>int</info>       <strong>$mode</strong>       Возможные значения для <strong>$mode</strong>: <info>ODBC_BINMODE_PASSTHRU</info>: Использовать режим
                        passthru для двоичных данных <info>ODBC_BINMODE_RETURN</info>: Вернуть как есть
                        <info>ODBC_BINMODE_CONVERT</info>: Преобразовать в char и вернуть   На обработку двоичных
                        столбцов LONG также влияет функция <strong>odbc_longreadlen()</strong>.
                        
                        <info>ODBC_BINMODE_PASSTHRU</info>: Использовать режим passthru для двоичных данных
                        
                        <info>ODBC_BINMODE_RETURN</info>: Вернуть как есть
                        
                        <info>ODBC_BINMODE_CONVERT</info>: Преобразовать в char и вернуть
                        
                        На обработку двоичных столбцов LONG также влияет функция <strong>odbc_longreadlen()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: odbc_close
type: function
doc:
<comment>Description:</comment>
  Закрывает соединение ODBC
  
  Закрывает соединение с сервером базы данных.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>  Идентификатор соединения ODBC,
                   за подробностями обращайтесь к <strong>odbc_connect()</strong>.

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.


id: odbc_close_all
type: function
doc:
<comment>Description:</comment>
  Закрывает все соединения ODBC
  
  <strong>odbc_close_all()</strong> закроет все соединения с сервером (серверами) базы данных.

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.


id: odbc_columnprivileges
type: function
doc:
<comment>Description:</comment>
  Перечисляет столбцы и связанные привилегии для данной таблицы
  
  Перечисляет столбцы и связанные привилегии для данной таблицы.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>     Идентификатор соединения ODBC,
                         за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>  Каталог ('qualifier' на языке ODBC 2).
  <info>string</info>       <strong>$schema</strong>   Схема ('owner' на языке ODBC 2). Этот параметр принимает следующие шаблоны
                         поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.
  <info>string</info>       <strong>$table</strong>    Имя таблицы. Этот параметр принимает следующие шаблоны поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.
  <info>string</info>       <strong>$column</strong>   Имя столбца. Этот параметр принимает следующие шаблоны поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  Этот идентификатор результата можно использовать для получения списка столбцов и
                  связанных привилегий.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>TABLE_CAT</return><return>TABLE_SCHEM</return><return>TABLE_NAME</return><return>COLUMN_NAME</return><return>GRANTOR</return><return>GRANTEE</return><return>PRIVILEGE</return><return>IS_GRANTABLE</return>
                  Драйверы могут сообщать дополнительные столбцы.
                  
                  <return>TABLE_CAT</return>
                  
                  <return>TABLE_SCHEM</return>
                  
                  <return>TABLE_NAME</return>
                  
                  <return>COLUMN_NAME</return>
                  
                  <return>GRANTOR</return>
                  
                  <return>GRANTEE</return>
                  
                  <return>PRIVILEGE</return>
                  
                  <return>IS_GRANTABLE</return>
                  
                  Результирующий набор упорядочивается по <return>TABLE_CAT</return>, <return>TABLE_SCHEM</return>, <return>TABLE_NAME</return>,
                  <return>COLUMN_NAME</return> и <return>PRIVILEGE</return>.


id: odbc_columns
type: function
doc:
<comment>Description:</comment>
  Перечисляет имена столбцов в указанных таблицах
  
  Перечисляет все столбцы в запрошенном диапазоне.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>     Идентификатор соединения ODBC,
                         за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>  Каталог ('qualifier' на языке ODBC 2).
  <info>string|null</info>  <strong>$schema</strong>   Схема ('owner' на языке ODBC 2). Этот параметр принимает следующие шаблоны
                         поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.
  <info>string|null</info>  <strong>$table</strong>    Имя таблицы. Этот параметр принимает следующие шаблоны поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.
  <info>string|null</info>  <strong>$column</strong>   Имя столбца. Этот параметр принимает следующие шаблоны поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>TABLE_CAT</return><return>TABLE_SCHEM</return><return>TABLE_NAME</return><return>COLUMN_NAME</return><return>DATA_TYPE</return><return>TYPE_NAME</return><return>COLUMN_SIZE</return><return>BUFFER_LENGTH</return><return>DECIMAL_DIGITS</return><return>NUM_PREC_RADIX</return><return>NULLABLE</return><return>REMARKS</return><return>COLUMN_DEF</return><return>SQL_DATA_TYPE</return><return>SQL_DATETIME_SUB</return><return>CHAR_OCTET_LENGTH</return><return>ORDINAL_POSITION</return><return>IS_NULLABLE</return>
                  Драйверы могут сообщать дополнительные столбцы.
                  
                  <return>TABLE_CAT</return>
                  
                  <return>TABLE_SCHEM</return>
                  
                  <return>TABLE_NAME</return>
                  
                  <return>COLUMN_NAME</return>
                  
                  <return>DATA_TYPE</return>
                  
                  <return>TYPE_NAME</return>
                  
                  <return>COLUMN_SIZE</return>
                  
                  <return>BUFFER_LENGTH</return>
                  
                  <return>DECIMAL_DIGITS</return>
                  
                  <return>NUM_PREC_RADIX</return>
                  
                  <return>NULLABLE</return>
                  
                  <return>REMARKS</return>
                  
                  <return>COLUMN_DEF</return>
                  
                  <return>SQL_DATA_TYPE</return>
                  
                  <return>SQL_DATETIME_SUB</return>
                  
                  <return>CHAR_OCTET_LENGTH</return>
                  
                  <return>ORDINAL_POSITION</return>
                  
                  <return>IS_NULLABLE</return>
                  
                  Результирующий набор упорядочивается по <return>TABLE_CAT</return>, <return>TABLE_SCHEM</return>, <return>TABLE_NAME</return> и
                  <return>ORDINAL_POSITION</return>.

<comment>See Also:</comment>
   * <strong>odbc_columnprivileges()</strong>
   * <strong>odbc_procedurecolumns()</strong>


id: odbc_commit
type: function
doc:
<comment>Description:</comment>
  Фиксирует транзакцию ODBC
  
  Фиксирует все незавершённые транзакции в соединении.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>  Идентификатор соединения ODBC,
                   за подробностями обращайтесь к <strong>odbc_connect()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: odbc_connect
type: function
doc:
<comment>Description:</comment>
  Соединяет с источником данных
  
  Идентификатор соединения, возвращаемый этой функцией, необходим для других ODBC-функций. Вы можете
  держать одновременно открытыми несколько соединений.
  
  Некоторые ODBC-драйверы, выполняющие сложные хранимые процедуры, могут обрываться с ошибкой типа:
  "Cannot open a cursor on a stored procedure that has anything other than a single select statement
  in it". Использование SQL_CUR_USE_ODBC поможет избежать появления этой ошибки. Также некоторые
  драйверы не поддерживают необязательный параметр row_number в <strong>odbc_fetch_row()</strong>. SQL_CUR_USE_ODBC
  также может помочь в этом случае.

<comment>Param:</comment>
  <info>string</info>  <strong>$dsn</strong>            Database Source Name (DSN) для соединения. В качестве альтернативы можно
                          производить соединение и без DSN.
  <info>string</info>  <strong>$user</strong>           Имя.
  <info>string</info>  <strong>$password</strong>       Пароль.
  <info>int</info>     <strong>$cursor_option</strong>  Устанавливает тип используемого курсора для соединения. Обычно этот
                          параметр не нужен, но может оказаться полезным для обхода проблем с
                          некоторыми драйверами ODBC.
                          
                          Следующие константы определены для типа курсора:
                          
                           SQL_CUR_USE_IF_NEEDED  SQL_CUR_USE_ODBC  SQL_CUR_USE_DRIVER 
                          
                          SQL_CUR_USE_IF_NEEDED
                          
                          SQL_CUR_USE_ODBC
                          
                          SQL_CUR_USE_DRIVER

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает соединение ODBC или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * Для постоянных соединений: <strong>odbc_pconnect()</strong>


id: odbc_connection_string_is_quoted
type: function
doc:
<comment>Description:</comment>
  Определяет, заключено ли значение строки соединения ODBC в кавычки
  
  Определяет, правильно ли заключена строка в кавычки для значения строки соединения ODBC. Для
  кавычек в строке соединения ODBC используются фигурные скобки, причём завершающие скобки в строке
  должны быть экранированы путём повторения их дважды, аналогично кавычкам в SQL.

<comment>Param:</comment>
  <info>string</info>  <strong>$str</strong>  Строка, которую необходимо проверить на наличие кавычек.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если кавычки приведены правильно, в противном случае возвращает <info>false</info>.

<comment>See Also:</comment>
   * <strong>odbc_connection_string_quote()</strong>
   * <strong>odbc_connection_string_should_quote()</strong>


id: odbc_connection_string_quote
type: function
doc:
<comment>Description:</comment>
  Заключает в кавычки значение строки подключения
  
  Заключает в кавычки значение строки подключения в соответствии с правилами ODBC. То есть оно будет
  окружено кавычками, а все завершающие фигурные скобки будут экранированы. Это необходимо делать
  для всех значений строки подключения, которые поступают от пользователя. Невыполнение этого
  требования может привести к проблемам с разбором строки подключения или к инъекции значений в
  строку подключения.
  
  Обратите внимание, что данная функция не проверяет, не заключена ли уже строка в кавычки и не
  нуждается ли она в кавычках. Для этого следует использовать функцию
  <strong>odbc_connection_string_is_quoted()</strong> и <strong>odbc_connection_string_should_quote()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$str</strong>  Строка, не заключённая в кавычки.

<comment>Return:</comment>
  <info>string</info>  Возвращает строку, заключённую в кавычки, окружённую фигурными скобками и правильно
          экранированную.

<comment>See Also:</comment>
   * <strong>odbc_connection_string_is_quoted()</strong>
   * <strong>odbc_connection_string_should_quote()</strong>


id: odbc_connection_string_should_quote
type: function
doc:
<comment>Description:</comment>
  Определяет, следует ли заключать значение строки соединения ODBC в кавычки
  
  Определяет, нужно ли заключать строку в кавычки для строкового значения соединения ODBC, т.е.
  содержит ли она специальные символы.
  
  Обратите внимание, что при этом не проверяется, заключена ли строка в кавычки; уже заключённая в
  кавычки строка будет содержать символы, которые заставят эту функцию вернуть значение true. Для
  проверки следует использовать функцию <strong>odbc_connection_string_is_quoted()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$str</strong>  Строка, которую необходимо проверить.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если строка должна быть заключена в кавычки, в противном случае возвращает
        <info>false</info>.

<comment>See Also:</comment>
   * <strong>odbc_connection_string_quote()</strong>
   * <strong>odbc_connection_string_is_quoted()</strong>


id: odbc_cursor
type: function
doc:
<comment>Description:</comment>
  Возвращает имя курсора
  
  Возвращает имя курсора для данного result_id.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает имя курсора в виде строки или <info>false</info> в случае возникновения ошибки.


id: odbc_data_source
type: function
doc:
<comment>Description:</comment>
  Возвращает информацию о доступных DSN
  
  Эта функция вернёт список доступных DSN (после нескольких вызовов).

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>        Идентификатор соединения ODBC,
                         за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>int</info>       <strong>$fetch_type</strong>  <strong>$fetch_type</strong> может быть одним из двух типов констант: <info>SQL_FETCH_FIRST</info>,
                         <info>SQL_FETCH_NEXT</info>. Используйте <info>SQL_FETCH_FIRST</info> при первом вызове этой функции,
                         после этого используйте <info>SQL_FETCH_NEXT</info>.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает <info>false</info> в случае возникновения ошибки, массив (<info>array</info>) в случае успешного
               выполнения и <info>null</info> после выборки последнего доступного DSN.


id: odbc_do
type: function
doc:
<comment>Description:</comment>
  Псевдоним odbc_exec
  
  Функция является псевдонимом:  <strong>odbc_exec()</strong>.


id: odbc_error
type: function
doc:
<comment>Description:</comment>
  Возвращает последний код ошибки
  
  Возвращает шестизначное состояние ODBC или пустую строку, если ошибок не возникло.

<comment>Param:</comment>
  <info>resource|null</info>  <strong>$odbc</strong>  Идентификатор соединения ODBC,
                        за подробностями обращайтесь к <strong>odbc_connect()</strong>.

<comment>Return:</comment>
  <info>string</info>  Если указан параметр <strong>$odbc</strong>, возвращается последнее состояние этого соединения, иначе
          возвращается последнее состояние любого соединения.
          
          Эта функция возвращает осмысленное значение, только если последний запрос ODBC завершился
          неудачно (т.е. функция <strong>odbc_exec()</strong> вернула <info>false</info>).

<comment>See Also:</comment>
   * <strong>odbc_errormsg()</strong>
   * <strong>odbc_exec()</strong>


id: odbc_errormsg
type: function
doc:
<comment>Description:</comment>
  Возвращает последнее сообщение об ошибке
  
  Возвращает строку, содержащую последнее сообщение об ошибке ODBC, или пустую строку, если ошибок
  не возникло.

<comment>Param:</comment>
  <info>resource|null</info>  <strong>$odbc</strong>  Идентификатор соединения ODBC,
                        за подробностями обращайтесь к <strong>odbc_connect()</strong>.

<comment>Return:</comment>
  <info>string</info>  Если указан параметр <strong>$odbc</strong>, возвращается последнее состояние этого соединения, иначе
          возвращается последнее состояние любого соединения.
          
          Эта функция возвращает осмысленное значение, только если последний запрос ODBC завершился
          неудачно (т.е. функция <strong>odbc_exec()</strong> вернула <info>false</info>).

<comment>See Also:</comment>
   * <strong>odbc_error()</strong>
   * <strong>odbc_exec()</strong>


id: odbc_exec
type: function
doc:
<comment>Description:</comment>
  Выполняет инструкцию SQL напрямую
  
  Отправляет инструкцию SQL на сервер базы данных.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>   Идентификатор соединения ODBC,
                    за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string</info>    <strong>$query</strong>  Инструкция SQL.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC, если команда SQL была выполнена успешно,
                  или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>odbc_prepare()</strong>
   * <strong>odbc_execute()</strong>


id: odbc_execute
type: function
doc:
<comment>Description:</comment>
  Выполняет запрос
  
  Выполняет запрос, подготовленный <strong>odbc_prepare()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Ресурс (<info>resource</info>) с идентификатором результата из <strong>odbc_prepare()</strong>.
  <info>array</info>     <strong>$params</strong>     Параметры в <strong>$params</strong> заменят псевдопеременные подготовленном запросе по
                        порядку. Элементы этого массива будут преобразованы в строки при вызове этой
                        функции.
                        
                        Любые параметры в <strong>$params</strong>, заключённые в одинарные кавычки, будут
                        восприниматься как имя файла для чтения и отправки на сервер базы данных в
                        качестве данных для соответствующей псевдопеременной.
                        
                        Если необходимо сохранить строку, которая на самом деле начинается и
                        заканчивается одинарными кавычками, нужно добавить пробел или другой символ,
                        не являющийся одинарной кавычкой, в начало или конец параметра, что
                        предотвратит использование параметра в качестве имени файла. Если этот
                        вариант не подходит, необходимо использовать другой механизм для хранения
                        строки, например, выполнение запроса напрямую с помощью <strong>odbc_exec()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>odbc_prepare()</strong>


id: odbc_fetch_array
type: function
doc:
<comment>Description:</comment>
  Возвращает строку результата в виде ассоциативного массива
  
  Возвращает ассоциативный массив (<info>array</info>) из запроса ODBC.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Ресурс результата из <strong>odbc_exec()</strong>.
  <info>int</info>       <strong>$row</strong>        Необязательный параметр, указывающий номер строки для возврата.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает массив, соответствующий возвращаемой строке, или <info>false</info> если строк больше
               нет.

<comment>See Also:</comment>
   * <strong>odbc_fetch_row()</strong>
   * <strong>odbc_fetch_object()</strong>
   * <strong>odbc_num_rows()</strong>


id: odbc_fetch_into
type: function
doc:
<comment>Description:</comment>
  Возвращает одну строку результата в массив
  
  Возвращает одну строку результата в массив (<info>array</info>).

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Ресурс результата (<info>resource</info>).
  <info>array</info>     <strong>$array</strong>      Массив результатов (<info>array</info>) может быть любого типа, поскольку он будет
                        преобразован в массив типов. Он будет содержать значения столбцов, начиная с
                        индекса 0.
  <info>int</info>       <strong>$row</strong>        Номер строки.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает количество столбцов в результате; <info>false</info> в случае возникновения ошибки.


id: odbc_fetch_object
type: function
doc:
<comment>Description:</comment>
  Возвращает строку результата в виде объекта
  
  Возвращает объект (<info>object</info>) из запроса ODBC.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Ресурс результата из <strong>odbc_exec()</strong>.
  <info>int</info>       <strong>$row</strong>        Необязательный параметр, указывающий номер строки для возврата.

<comment>Return:</comment>
  <info>stdClass|false</info>  Возвращает объект, соответствующий возвращаемой строке, или <info>false</info> если строк
                  больше нет.

<comment>See Also:</comment>
   * <strong>odbc_fetch_row()</strong>
   * <strong>odbc_fetch_array()</strong>
   * <strong>odbc_num_rows()</strong>


id: odbc_fetch_row
type: function
doc:
<comment>Description:</comment>
  Возвращает строку
  
  Выбирает строку из данных, которые были возвращены <strong>odbc_do()</strong> или <strong>odbc_exec()</strong>. После вызова
  <strong>odbc_fetch_row()</strong> к полям этой строки можно получить доступ с помощью <strong>odbc_result()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>int|null</info>  <strong>$row</strong>        Если параметр <strong>$row</strong> не указан, <strong>odbc_fetch_row()</strong> попытается выбрать следующую
                        строку в результирующем наборе. Вызовы <strong>odbc_fetch_row()</strong> с параметром <strong>$row</strong> и
                        без него можно смешивать.
                        
                        Чтобы пошагово пройти по результату более одного раза, можно вызвать
                        <strong>odbc_fetch_row()</strong> со значением параметра <strong>$row</strong>, равным 1, а затем продолжить
                        выполнение <strong>odbc_fetch_row()</strong> без <strong>$row</strong>, чтобы просмотреть результат. Если
                        драйвер не поддерживает выборку строк по номеру, параметр <strong>$row</strong> игнорируется.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если строка существует, <info>false</info> в противном случае.


id: odbc_field_len
type: function
doc:
<comment>Description:</comment>
  Возвращает длину (точность) поля
  
  Возвращает длину поля, на которое ссылается число в заданном идентификаторе результата.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>int</info>       <strong>$field</strong>      Номер поля. Нумерация полей начинается с 1.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает длину поля или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>odbc_field_scale()</strong> для получения масштаба числа
     с плавающей точкой
    


id: odbc_field_name
type: function
doc:
<comment>Description:</comment>
  Возвращает имя столбца
  
  Возвращает имя поля, занимающего заданный номер столбца в заданном идентификаторе результата.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>int</info>       <strong>$field</strong>      Номер поля. Нумерация полей начинается с 1.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает имя поля в виде строки или <info>false</info> в случае возникновения ошибки.


id: odbc_field_num
type: function
doc:
<comment>Description:</comment>
  Возвращает номер столбца
  
  Получает номер слота столбца, который соответствует названному полю в заданном идентификаторе
  результата.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>string</info>    <strong>$field</strong>      Имя поля.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает номер поля в виде целого числа или <info>false</info> в случае возникновения ошибки.
             Нумерация полей начинается с 1.


id: odbc_field_precision
type: function
doc:
<comment>Description:</comment>
  Псевдоним odbc_field_len
  
  Функция является псевдонимом:  <strong>odbc_field_len()</strong>.

<comment>See Also:</comment>
   * <strong>odbc_field_scale()</strong> для получения масштаба числа
     с плавающей точкой
    


id: odbc_field_scale
type: function
doc:
<comment>Description:</comment>
  Возвращает масштаб поля
  
  Возвращает масштаб поля, на которое ссылается число в заданном идентификаторе результата.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>int</info>       <strong>$field</strong>      Номер поля. Нумерация полей начинается с 1.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает масштаб поля в виде целого числа или <info>false</info> в случае возникновения ошибки.


id: odbc_field_type
type: function
doc:
<comment>Description:</comment>
  Возвращает тип данных поля
  
  Получает SQL-тип поля, на которое ссылается число в заданном идентификаторе результата.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>int</info>       <strong>$field</strong>      Номер поля. Нумерация полей начинается с 1.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает тип поля в виде строки или <info>false</info> в случае возникновения ошибки.


id: odbc_foreignkeys
type: function
doc:
<comment>Description:</comment>
  Возвращает список внешних ключей
  
  Возвращает список внешних ключей в указанной таблице или список внешних ключей в других таблицах,
  которые ссылаются на первичный ключ в указанной таблице.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>        Идентификатор соединения ODBC,
                            за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string</info>       <strong>$fk_catalog</strong>  Каталог ('квалификатор' на языке ODBC 2) таблицы с первичным ключом.
  <info>string</info>       <strong>$pk_schema</strong>   Схема ('владелец' на языке ODBC 2) таблицы с первичным ключом.
  <info>string</info>       <strong>$pk_table</strong>    Таблица с первичным ключом.
  <info>string|null</info>  <strong>$pk_catalog</strong>  Каталог ('квалификатор' на языке ODBC 2) таблицы c внешним ключом.
  <info>string</info>       <strong>$fk_schema</strong>   Схема ('владелец' на языке ODBC 2) таблицы с внешним ключом.
  <info>string</info>       <strong>$fk_table</strong>    Таблица с внешним ключом.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>PKTABLE_CAT</return><return>PKTABLE_SCHEM</return><return>PKTABLE_NAME</return><return>PKCOLUMN_NAME</return><return>FKTABLE_CAT</return><return>FKTABLE_SCHEM</return><return>FKTABLE_NAME</return><return>FKCOLUMN_NAME</return><return>KEY_SEQ</return><return>UPDATE_RULE</return><return>DELETE_RULE</return><return>FK_NAME</return><return>PK_NAME</return><return>DEFERRABILITY</return>
                  Драйверы могут сообщать дополнительные столбцы.
                  
                  <return>PKTABLE_CAT</return>
                  
                  <return>PKTABLE_SCHEM</return>
                  
                  <return>PKTABLE_NAME</return>
                  
                  <return>PKCOLUMN_NAME</return>
                  
                  <return>FKTABLE_CAT</return>
                  
                  <return>FKTABLE_SCHEM</return>
                  
                  <return>FKTABLE_NAME</return>
                  
                  <return>FKCOLUMN_NAME</return>
                  
                  <return>KEY_SEQ</return>
                  
                  <return>UPDATE_RULE</return>
                  
                  <return>DELETE_RULE</return>
                  
                  <return>FK_NAME</return>
                  
                  <return>PK_NAME</return>
                  
                  <return>DEFERRABILITY</return>
                  
                  Если запрашиваются внешние ключи, связанные с первичным ключом, результирующий
                  набор упорядочивается по <return>FKTABLE_CAT</return>, <return>FKTABLE_SCHEM</return>, <return>FKTABLE_NAME</return> и <return>KEY_SEQ</return>. Если
                  запрашиваются первичные ключи, связанные с внешним ключом, результирующий набор
                  упорядочивается по <return>PKTABLE_CAT</return>, <return>PKTABLE_SCHEM</return>, <return>PKTABLE_NAME</return> и <return>KEY_SEQ</return>.
                  
                  Если <strong>$pk_table</strong> содержит имя таблицы, <strong>odbc_foreignkeys()</strong> возвращает результирующий
                  набор, содержащий первичный ключ указанной таблицы и все внешние ключи, которые
                  ссылаются на него.
                  
                  Если <strong>$fk_table</strong> содержит имя таблицы, <strong>odbc_foreignkeys()</strong> возвращает результирующий
                  набор, содержащий все внешние ключи в указанной таблице и первичные ключи (в
                  других таблицах), на которые они ссылаются.
                  
                  Если и <strong>$pk_table</strong> и <strong>$fk_table</strong> содержат имена таблиц, <strong>odbc_foreignkeys()</strong> возвращает
                  внешние ключи в таблице, указанной в <strong>$fk_table</strong>, которые ссылаются на первичный
                  ключ таблицы, указанной в <strong>$pk_table</strong>. Ключ должен быть один, не более.

<comment>See Also:</comment>
   * <strong>odbc_tables()</strong>
   * <strong>odbc_primarykeys()</strong>


id: odbc_free_result
type: function
doc:
<comment>Description:</comment>
  Освобождает ресурсы, связанные с результатом
  
  Освобождает ресурсы, связанные с результатом.
  
  <strong>odbc_free_result()</strong> нужно вызывать только в том случае, если во время работы вашего скрипта
  используется слишком много памяти. Вся память, хранящая результат, будет автоматически освобождена
  после завершения скрипта.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.

<comment>Return:</comment>
  <info>bool</info>  Всегда возвращает <info>true</info>.


id: odbc_gettypeinfo
type: function
doc:
<comment>Description:</comment>
  Возвращает информацию о типах данных, поддерживаемых источником данных
  
  Возвращает информацию о типах данных, поддерживаемых источником данных.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>       Идентификатор соединения ODBC,
                        за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>int</info>       <strong>$data_type</strong>  Тип данных, который можно использовать для ограничения информации до одного
                        типа данных.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  TYPE_NAMEDATA_TYPEPRECISIONLITERAL_PREFIXLITERAL_SUFFIXCREATE_PARAMSNULLABLECASE_SENSITIVESEARCHABLEUNSIGNED_ATTRIBUTEMONEYAUTO_INCREMENTLOCAL_TYPE_NAMEMINIMUM_SCALEMAXIMUM_SCALE
                  
                  TYPE_NAME
                  
                  DATA_TYPE
                  
                  PRECISION
                  
                  LITERAL_PREFIX
                  
                  LITERAL_SUFFIX
                  
                  CREATE_PARAMS
                  
                  NULLABLE
                  
                  CASE_SENSITIVE
                  
                  SEARCHABLE
                  
                  UNSIGNED_ATTRIBUTE
                  
                  MONEY
                  
                  AUTO_INCREMENT
                  
                  LOCAL_TYPE_NAME
                  
                  MINIMUM_SCALE
                  
                  MAXIMUM_SCALE
                  
                  Набор результатов упорядочен по DATA_TYPE и TYPE_NAME.


id: odbc_longreadlen
type: function
doc:
<comment>Description:</comment>
  Обрабатывает столбцы LONG
  
  Управляет обработкой столбцов <return>LONG</return>, <return>LONGVARCHAR</return> и <return>LONGVARBINARY</return>. Длина по умолчанию может быть
  установлена с помощью директивы php.ini uodbc.defaultlrl.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>int</info>       <strong>$length</strong>     Количество байтов, возвращаемых PHP, контролируется длиной параметра. Если
                        установлено значение <return>0</return>, данные столбца LONG передаются клиенту (т.е.
                        печатаются) при получении с помощью <strong>odbc_result()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: odbc_next_result
type: function
doc:
<comment>Description:</comment>
  Проверяет, доступно ли несколько результатов
  
  Проверяет, доступны ли другие результирующие наборы, а также разрешает доступ к следующему
  результирующему набору с помощью <strong>odbc_fetch_array()</strong>, <strong>odbc_fetch_row()</strong>, <strong>odbc_result()</strong> и т.д.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> если доступны другие результирующие наборы, <info>false</info> в противном случае.


id: odbc_num_fields
type: function
doc:
<comment>Description:</comment>
  Возвращает количество столбцов в результате
  
  Возвращает количество полей (столбцов) в результате ODBC.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата, возвращаемый <strong>odbc_exec()</strong>.

<comment>Return:</comment>
  <info>int</info>  Возвращает количество полей или -1 в случае возникновения ошибки.


id: odbc_num_rows
type: function
doc:
<comment>Description:</comment>
  Возвращает количество строк в результате
  
  Возвращает количество строк в результате. Для операторов INSERT, UPDATE и DELETE <strong>odbc_num_rows()</strong>
  возвращает количество затронутых строк. Для предложения SELECT это <return>может</return> быть количество доступных
  строк.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата, возвращаемый <strong>odbc_exec()</strong>.

<comment>Return:</comment>
  <info>int</info>  Возвращает количество строк в результате ODBC. Функция вернёт -1 в случае возникновения
       ошибки.


id: odbc_pconnect
type: function
doc:
<comment>Description:</comment>
  Открывает постоянное соединение с базой данных
  
  Открывает постоянное соединение с базой данных.
  
  Функция очень похожа на <strong>odbc_connect()</strong>, за исключением того, что соединение на самом деле не
  закрывается после завершения работы скрипта. Последующие запросы на соединение с той же
  комбинацией <strong>$dsn</strong>, <strong>$user</strong> и <strong>$password</strong> (с помощью <strong>odbc_connect()</strong> и <strong>odbc_pconnect()</strong>) могут повторно
  использовать постоянное соединение.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает соединение ODBC или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>odbc_connect()</strong>
   * Постоянные соединения с базами данных


id: odbc_prepare
type: function
doc:
<comment>Description:</comment>
  Подготавливает запрос к выполнению
  
  Подготавливает запрос к выполнению. Идентификатор результата может быть использован позже для
  выполнения запроса с помощью <strong>odbc_execute()</strong>.
  
  Некоторые базы данных (например, IBM DB2, MS SQL Server и Oracle) поддерживают хранимые процедуры,
  которые принимают параметры типа IN, INOUT и OUT, как определено в спецификации ODBC. Однако
  драйвер Unified ODBC в настоящее время поддерживает только параметры типа IN для хранимых
  процедур.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>   Идентификатор соединения ODBC,
                    за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string</info>    <strong>$query</strong>  Подготавливаемый запрос в виде строки.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC, если SQL-команда была успешно
                  подготовлена. В случае возникновения ошибки возвращает <info>false</info>.

<comment>See Also:</comment>
   * <strong>odbc_execute()</strong>


id: odbc_primarykeys
type: function
doc:
<comment>Description:</comment>
  Получает первичные ключи таблицы
  
  Возвращает идентификатор результата, который можно использовать для получения имён столбцов,
  составляющих первичный ключ таблицы.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>     Идентификатор соединения ODBC,
                         за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>  Каталог ('qualifier' на языке ODBC 2).
  <info>string</info>       <strong>$schema</strong>   Схема ('owner' на языке ODBC 2).
  <info>string</info>       <strong>$table</strong>    

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>TABLE_CAT</return><return>TABLE_SCHEM</return><return>TABLE_NAME</return><return>COLUMN_NAME</return><return>KEY_SEQ</return><return>PK_NAME</return> Драйверы могут сообщать
                  дополнительные столбцы.
                  
                  <return>TABLE_CAT</return>
                  
                  <return>TABLE_SCHEM</return>
                  
                  <return>TABLE_NAME</return>
                  
                  <return>COLUMN_NAME</return>
                  
                  <return>KEY_SEQ</return>
                  
                  <return>PK_NAME</return>
                  
                  Результирующий набор упорядочивается по <return>TABLE_CAT</return>, <return>TABLE_SCHEM</return>, <return>TABLE_NAME</return> и
                  <return>KEY_SEQ</return>.

<comment>See Also:</comment>
   * <strong>odbc_tables()</strong>
   * <strong>odbc_foreignkeys()</strong>


id: odbc_procedurecolumns
type: function
doc:
<comment>Description:</comment>
  Получает информацию о параметрах процедур
  
  Получает информацию о параметрах процедур.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>       Идентификатор соединения ODBC,
                           за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>    Каталог ('qualifier' на языке ODBC 2).
  <info>string|null</info>  <strong>$schema</strong>     Схема ('owner' на языке ODBC 2). Этот параметр принимает следующие
                           шаблоны поиска:
                           <return>%</return> соответствующий нулю или более символам,
                           и <return>_</return> соответствующий ровно одному символу.
  <info>string|null</info>  <strong>$procedure</strong>  Процедура. Этот параметр принимает следующие шаблоны поиска:
                           <return>%</return> соответствующий нулю или более символам,
                           и <return>_</return> соответствующий ровно одному символу.
  <info>string|null</info>  <strong>$column</strong>     Столбец. Этот параметр принимает следующие шаблоны поиска:
                           <return>%</return> соответствующий нулю или более символам,
                           и <return>_</return> соответствующий ровно одному символу.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает список входных и выходных параметров, а также столбцы, составляющие
                  результирующий набор для указанных процедур. Возвращает идентификатор результата
                  ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>PROCEDURE_CAT</return><return>PROCEDURE_SCHEM</return><return>PROCEDURE_NAME</return><return>COLUMN_NAME</return><return>COLUMN_TYPE</return><return>DATA_TYPE</return><return>TYPE_NAME</return><return>COLUMN_SIZE</return><return>BUFFER_LENGTH</return><return>DECIMAL_DIGITS</return><return>NUM_PREC_RADIX</return><return>NULLABLE</return><return>REMARKS</return><return>COLUMN_DEF</return><return>SQL_DATA_TYPE</return><return>SQL_DATETIME_SUB</return><return>CHAR_OCTET_LENGTH</return><return>ORDINAL_POSITION</return><return>IS_NULLABLE</return>
                  Драйверы могут сообщать дополнительные столбцы.
                  
                  <return>PROCEDURE_CAT</return>
                  
                  <return>PROCEDURE_SCHEM</return>
                  
                  <return>PROCEDURE_NAME</return>
                  
                  <return>COLUMN_NAME</return>
                  
                  <return>COLUMN_TYPE</return>
                  
                  <return>DATA_TYPE</return>
                  
                  <return>TYPE_NAME</return>
                  
                  <return>COLUMN_SIZE</return>
                  
                  <return>BUFFER_LENGTH</return>
                  
                  <return>DECIMAL_DIGITS</return>
                  
                  <return>NUM_PREC_RADIX</return>
                  
                  <return>NULLABLE</return>
                  
                  <return>REMARKS</return>
                  
                  <return>COLUMN_DEF</return>
                  
                  <return>SQL_DATA_TYPE</return>
                  
                  <return>SQL_DATETIME_SUB</return>
                  
                  <return>CHAR_OCTET_LENGTH</return>
                  
                  <return>ORDINAL_POSITION</return>
                  
                  <return>IS_NULLABLE</return>
                  
                  Результирующий набор упорядочивается по <return>PROCEDURE_CAT</return>, <return>PROCEDURE_SCHEM</return>,
                  <return>PROCEDURE_NAME</return> и <return>COLUMN_TYPE</return>.

<comment>See Also:</comment>
   * <strong>odbc_columns()</strong>


id: odbc_procedures
type: function
doc:
<comment>Description:</comment>
  Получает список процедур, хранящихся в определённом источнике данных
  
  Перечисляет все процедуры в запрошенном диапазоне.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>       Идентификатор соединения ODBC,
                           за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>    Каталог ('qualifier' на языке ODBC 2).
  <info>string|null</info>  <strong>$schema</strong>     Схема ('owner' на языке ODBC 2). Этот параметр принимает следующие
                           шаблоны поиска:
                           <return>%</return> соответствующий нулю или более символам,
                           и <return>_</return> соответствующий ровно одному символу.
  <info>string|null</info>  <strong>$procedure</strong>  Имя процедуры. Этот параметр принимает следующие шаблоны поиска:
                           <return>%</return> соответствующий нулю или более символам,
                           и <return>_</return> соответствующий ровно одному символу.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC, содержащий информацию или <info>false</info> в случае
                  возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>PROCEDURE_CAT</return><return>PROCEDURE_SCHEM</return><return>PROCEDURE_NAME</return><return>NUM_INPUT_PARAMS</return><return>NUM_OUTPUT_PARAMS</return><return>NUM_RESULT_SETS</return><return>REMARKS</return><return>PROCEDURE_TYPE</return>
                  Драйверы могут сообщать дополнительные столбцы.
                  
                  <return>PROCEDURE_CAT</return>
                  
                  <return>PROCEDURE_SCHEM</return>
                  
                  <return>PROCEDURE_NAME</return>
                  
                  <return>NUM_INPUT_PARAMS</return>
                  
                  <return>NUM_OUTPUT_PARAMS</return>
                  
                  <return>NUM_RESULT_SETS</return>
                  
                  <return>REMARKS</return>
                  
                  <return>PROCEDURE_TYPE</return>
                  
                  Результирующий набор упорядочивается по <return>PROCEDURE_CAT</return>, <return>PROCEDURE_SCHEMA</return> и
                  <return>PROCEDURE_NAME</return>.

<comment>See Also:</comment>
   * <strong>odbc_procedurecolumns()</strong>
   * <strong>odbc_tables()</strong>


id: odbc_result
type: function
doc:
<comment>Description:</comment>
  Получает данные результата
  
  Получает данные результата.

<comment>Param:</comment>
  <info>resource</info>    <strong>$statement</strong>  Ресурс (<info>resource</info>) ODBC.
  <info>string|int</info>  <strong>$field</strong>      Имя получаемого поля. Это может быть целое число, содержащее номер столбца
                          нужного поля; или это может быть строка, содержащая имя поля.

<comment>Return:</comment>
  <info>string|bool|null</info>  Возвращает строковое содержимое поля, <info>false</info> в случае возникновения ошибки, <info>null</info>
                    для данных NULL или <info>true</info> для двоичных данных.


id: odbc_result_all
type: function
doc:
<comment>Description:</comment>
  Выводит результат в виде HTML-таблицы
  
  Печатает все строки из идентификатора результата, созданного <strong>odbc_exec()</strong>. Результат печатается в
  формате HTML-таблицы. Данные не экранируются.
  
  Функция не предназначена для использования в производственной среде; она должна использоваться при
  разработке для быстрого получения результирующего набора.

<comment>Param:</comment>
  <info>resource</info>  <strong>$statement</strong>  Идентификатор результата.
  <info>string</info>    <strong>$format</strong>     Дополнительный параметр для указания общего форматирования таблицы.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает количество строк в результате или <info>false</info> в случае возникновения ошибки.


id: odbc_rollback
type: function
doc:
<comment>Description:</comment>
  Откатывает транзакцию
  
  Откатывает все незавершённые операции в соединении.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>  Идентификатор соединения ODBC,
                   за подробностями обращайтесь к <strong>odbc_connect()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: odbc_setoption
type: function
doc:
<comment>Description:</comment>
  Регулирует настройки ODBC
  
  Функция позволяет настраивать параметры ODBC для конкретного соединения или результата запроса.
  Она используется для того, чтобы помочь найти решение проблем в специфических драйверах ODBC.
  Следует использовать эту функцию только программистам ODBC, понимающим, какой эффект оказывают
  различные параметры. Чтобы объяснить различные параметры и значения, которые можно использовать,
  понадобится хорошее справочное руководство по ODBC. Различные версии драйверов поддерживают разные
  параметры.
  
  Поскольку эффекты могут различаться в зависимости от драйвера ODBC, настоятельно не рекомендуется
  использовать данную функцию в скриптах, которые являются общедоступными. Кроме того, для данной
  функции недоступны некоторые параметры ODBC, потому что они должны быть настроены до установки
  соединения или подготовки запроса. Однако на определённой работе она может заставить PHP работать,
  чтобы начальник не говорил об использовании коммерческого продукта, и это единственное, что имеет
  значение.

<comment>Param:</comment>
  <info>resource</info>  <strong>$odbc</strong>    Идентификатор соединения или идентификатор результата, для которого нужно
                     изменить настройки. Для SQLSetConnectOption() это идентификатор соединения. Для
                     SQLSetStmtOption() это идентификатор результата.
  <info>int</info>       <strong>$which</strong>   Используемая функция ODBC. Значение должно быть равно 1 для
                     SQLSetConnectOption() и 2 для SQLSetStmtOption().
  <info>int</info>       <strong>$option</strong>  Устанавливаемая опция.
  <info>int</info>       <strong>$value</strong>   Значение для <strong>$option</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: odbc_specialcolumns
type: function
doc:
<comment>Description:</comment>
  Извлекает особые столбцы
  
  Извлекает либо оптимальный набор столбцов, который однозначно определяет строку в таблице, либо
  столбцы, которые автоматически обновляются, когда любое значение в строке обновляется транзакцией.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>      Идентификатор соединения ODBC,
                          за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>int</info>          <strong>$type</strong>      Когда аргументом является <info>SQL_BEST_ROWID</info>, <strong>odbc_specialcolumns()</strong> возвращает
                          столбец или столбцы, которые однозначно идентифицируют каждую строку в
                          таблице.
                          
                          Когда аргументом является <info>SQL_ROWVER</info>, <strong>odbc_specialcolumns()</strong> возвращает
                          столбец или столбцы в указанной таблице, если они есть, которые
                          автоматически обновляются источником данных, когда любое значение в строке
                          обновляется любой транзакцией.
  <info>string|null</info>  <strong>$catalog</strong>   Каталог ('qualifier' на языке ODBC 2).
  <info>string</info>       <strong>$schema</strong>    Схема ('owner' на языке ODBC 2).
  <info>string</info>       <strong>$table</strong>     Таблица.
  <info>int</info>          <strong>$scope</strong>     Область, которая упорядочивает результирующий набор. Одна из констант
                          <info>SQL_SCOPE_CURROW</info>, <info>SQL_SCOPE_TRANSACTION</info> или <info>SQL_SCOPE_SESSION</info>.
  <info>int</info>          <strong>$nullable</strong>  Определяет, возвращать ли специальные столбцы, которые могут иметь
                          значение NULL. Одна из констант <info>SQL_NO_NULLS</info> или <info>SQL_NULLABLE </info>.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>SCOPE</return><return>COLUMN_NAME</return><return>DATA_TYPE</return><return>TYPE_NAME</return><return>COLUMN_SIZE</return><return>BUFFER_LENGTH</return><return>DECIMAL_DIGITS</return><return>PSEUDO_COLUMN</return>
                  Драйверы могут сообщать дополнительные столбцы.
                  
                  <return>SCOPE</return>
                  
                  <return>COLUMN_NAME</return>
                  
                  <return>DATA_TYPE</return>
                  
                  <return>TYPE_NAME</return>
                  
                  <return>COLUMN_SIZE</return>
                  
                  <return>BUFFER_LENGTH</return>
                  
                  <return>DECIMAL_DIGITS</return>
                  
                  <return>PSEUDO_COLUMN</return>
                  
                  Результирующий набор упорядочивается по <return>SCOPE</return>.

<comment>See Also:</comment>
   * <strong>odbc_tables()</strong>


id: odbc_statistics
type: function
doc:
<comment>Description:</comment>
  Получает статистику о таблице
  
  Получает статистику о таблице и её индексах.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>      Идентификатор соединения ODBC,
                          за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>   Каталог ('qualifier' на языке ODBC 2).
  <info>string</info>       <strong>$schema</strong>    Схема ('owner' на языке ODBC 2).
  <info>string</info>       <strong>$table</strong>     Имя таблицы.
  <info>int</info>          <strong>$unique</strong>    Тип индекса. Одна из констант <info>SQL_INDEX_UNIQUE</info> или <info>SQL_INDEX_ALL</info>.
  <info>int</info>          <strong>$accuracy</strong>  Одна из констант <info>SQL_ENSURE</info> или <info>SQL_QUICK</info>. Последняя запрашивает у
                          драйвера получение <return>CARDINALITY</return> и <return>PAGES</return>, только если они легко доступны с
                          сервера.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>TABLE_CAT</return><return>TABLE_SCHEM</return><return>TABLE_NAME</return><return>NON_UNIQUE</return><return>INDEX_QUALIFIER</return><return>INDEX_NAME</return><return>TYPE</return><return>ORDINAL_POSITION</return><return>COLUMN_NAME</return><return>ASC_OR_DESC</return><return>CARDINALITY</return><return>PAGES</return><return>FILTER_CONDITION</return>
                  Драйверы могут сообщать дополнительные столбцы.
                  
                  <return>TABLE_CAT</return>
                  
                  <return>TABLE_SCHEM</return>
                  
                  <return>TABLE_NAME</return>
                  
                  <return>NON_UNIQUE</return>
                  
                  <return>INDEX_QUALIFIER</return>
                  
                  <return>INDEX_NAME</return>
                  
                  <return>TYPE</return>
                  
                  <return>ORDINAL_POSITION</return>
                  
                  <return>COLUMN_NAME</return>
                  
                  <return>ASC_OR_DESC</return>
                  
                  <return>CARDINALITY</return>
                  
                  <return>PAGES</return>
                  
                  <return>FILTER_CONDITION</return>
                  
                  Результирующий набор упорядочивается по <return>NON_UNIQUE</return>, <return>TYPE</return>, <return>INDEX_QUALIFIER</return>,
                  <return>INDEX_NAME</return> и <return>ORDINAL_POSITION</return>.

<comment>See Also:</comment>
   * <strong>odbc_tables()</strong>


id: odbc_tableprivileges
type: function
doc:
<comment>Description:</comment>
  Перечисляет таблицы и привилегии, связанные с каждой таблицей
  
  Перечисляет таблицы в запрошенном диапазоне и привилегии, связанные с каждой таблицей.

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>     Идентификатор соединения ODBC,
                         за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>  Каталог ('qualifier' на языке ODBC 2).
  <info>string</info>       <strong>$schema</strong>   Схема ('owner' на языке ODBC 2). Этот параметр принимает следующие шаблоны
                         поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.
  <info>string</info>       <strong>$table</strong>    Имя таблицы. Этот параметр принимает следующие шаблоны поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.

<comment>Return:</comment>
  <info>resource|false</info>  Идентификатор результата ODBC или <info>false</info> в случае возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>TABLE_CAT</return><return>TABLE_SCHEM</return><return>TABLE_NAME</return><return>GRANTOR</return><return>GRANTEE</return><return>PRIVILEGE</return><return>IS_GRANTABLE</return> Драйверы могут
                  сообщать дополнительные столбцы.
                  
                  <return>TABLE_CAT</return>
                  
                  <return>TABLE_SCHEM</return>
                  
                  <return>TABLE_NAME</return>
                  
                  <return>GRANTOR</return>
                  
                  <return>GRANTEE</return>
                  
                  <return>PRIVILEGE</return>
                  
                  <return>IS_GRANTABLE</return>
                  
                  Результирующий набор упорядочивается по <return>TABLE_CAT</return>, <return>TABLE_SCHEM</return>, <return>TABLE_NAME</return>,
                  <return>PRIVILEGE</return> и <return>GRANTEE</return>.

<comment>See Also:</comment>
   * <strong>odbc_tables()</strong>


id: odbc_tables
type: function
doc:
<comment>Description:</comment>
  Получает список имён таблиц, хранящихся в определённом источнике данных
  
  Перечисляет все таблицы в запрошенном диапазоне.
  
  Для поддержки перечисления квалификаторов, владельцев и типов таблиц доступна следующая
  специальная семантика для <strong>$catalog</strong>, <strong>$schema</strong>, <strong>$table</strong> и <strong>$table_type</strong>:  Если значение <strong>$catalog</strong> равно
  символу процента (%), а <strong>$schema</strong> и <strong>$table</strong> являются пустыми строками, то результирующий набор будет
  содержать список допустимых квалификаторов для источника данных (все столбцы, кроме столбца
  TABLE_QUALIFIER, содержат NULL).  Если значение <strong>$schema</strong> равно символу процента (%), а <strong>$catalog</strong> и
  <strong>$table</strong> являются пустыми строками, то результирующий набор будет содержать список допустимых
  владельцев для источника данных (все столбцы, кроме столбца TABLE_OWNER, содержат NULL).  Если
  значение <strong>$table_type</strong> равно символу процента (%), а <strong>$catalog</strong>, <strong>$schema</strong> и <strong>$table</strong> являются пустыми
  строками, то результирующий набор будет содержать список допустимых типов таблиц для источника
  данных. (все столбцы, кроме столбца TABLE_TYPE, содержат NULL).
  
  Если значение <strong>$catalog</strong> равно символу процента (%), а <strong>$schema</strong> и <strong>$table</strong> являются пустыми строками,
  то результирующий набор будет содержать список допустимых квалификаторов для источника данных (все
  столбцы, кроме столбца TABLE_QUALIFIER, содержат NULL).
  
  Если значение <strong>$schema</strong> равно символу процента (%), а <strong>$catalog</strong> и <strong>$table</strong> являются пустыми строками,
  то результирующий набор будет содержать список допустимых владельцев для источника данных (все
  столбцы, кроме столбца TABLE_OWNER, содержат NULL).
  
  Если значение <strong>$table_type</strong> равно символу процента (%), а <strong>$catalog</strong>, <strong>$schema</strong> и <strong>$table</strong> являются
  пустыми строками, то результирующий набор будет содержать список допустимых типов таблиц для
  источника данных. (все столбцы, кроме столбца TABLE_TYPE, содержат NULL).

<comment>Param:</comment>
  <info>resource</info>     <strong>$odbc</strong>     Идентификатор соединения ODBC,
                         за подробностями обращайтесь к <strong>odbc_connect()</strong>.
  <info>string|null</info>  <strong>$catalog</strong>  Каталог ('qualifier' на языке ODBC 2).
  <info>string|null</info>  <strong>$schema</strong>   Схема ('owner' на языке ODBC 2). Этот параметр принимает следующие шаблоны
                         поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.
  <info>string|null</info>  <strong>$table</strong>    Имя таблицы. Этот параметр принимает следующие шаблоны поиска:
                         <return>%</return> соответствующий нулю или более символам,
                         и <return>_</return> соответствующий ровно одному символу.
  <info>string|null</info>  <strong>$types</strong>    Если параметр <strong>$table_type</strong> не является пустой строкой, то он должен
                         содержать список значений, разделённых запятыми, для интересующих типов;
                         каждое значение может быть заключено в одинарные кавычки (<return>'</return>) или не
                         заключено в кавычки. Например, <return>'TABLE','VIEW'</return> или <return>TABLE, VIEW</return>. Если
                         источник данных не поддерживает указанный тип таблицы, <strong>odbc_tables()</strong> не
                         вернёт никаких результатов для этого типа.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает идентификатор результата ODBC, содержащий информацию или <info>false</info> в случае
                  возникновения ошибки.
                  
                  В результирующем наборе имеются следующие столбцы:
                  <return>TABLE_CAT</return><return>TABLE_SCHEM</return><return>TABLE_NAME</return><return>TABLE_TYPE</return><return>REMARKS</return> Драйверы могут сообщать
                  дополнительные столбцы.
                  
                  <return>TABLE_CAT</return>
                  
                  <return>TABLE_SCHEM</return>
                  
                  <return>TABLE_NAME</return>
                  
                  <return>TABLE_TYPE</return>
                  
                  <return>REMARKS</return>
                  
                  Результирующий набор упорядочивается по <return>TABLE_TYPE</return>, <return>TABLE_CAT</return>, <return>TABLE_SCHEM</return> и
                  <return>TABLE_NAME</return>.

<comment>See Also:</comment>
   * <strong>odbc_tableprivileges()</strong>
   * <strong>odbc_columns()</strong>
   * <strong>odbc_specialcolumns()</strong>
   * <strong>odbc_statistics()</strong>
   * <strong>odbc_procedures()</strong>


id: opcache_compile_file
type: function
doc:
<comment>Description:</comment>
  Скомпилировать и закешировать, но не исполнять скрипт PHP
  
  Эта функция компилирует PHP-скрипт и помещает его в кеш опкодов, но не запускает его. Можно
  использовать для прогрева кеша после перезапуска веб-сервера.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Путь к скрипту PHP.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если <strong>$filename</strong> успешно скомпилирован или <info>false</info> в случае возникновения
        ошибки.

<comment>See Also:</comment>
   * <strong>opcache_invalidate()</strong>


id: opcache_get_configuration
type: function
doc:
<comment>Description:</comment>
  Получить конфигурационную информацию кеша
  
  Эта функция возвращает настройки конфигурации экземпляра кеша.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает массив с информацией, включая INI-настройки, чёрный список и версию

<comment>See Also:</comment>
   * <strong>opcache_get_status()</strong>


id: opcache_get_status
type: function
doc:
<comment>Description:</comment>
  Получить информацию о состоянии кеша
  
  Функция возвращает информацию о состоянии экземпляра кеша в памяти. Она не возвращает никакой
  информации о файловом кеше.

<comment>Param:</comment>
  <info>bool</info>  <strong>$include_scripts</strong>  Включить информацию о состоянии конкретного скрипта.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает массив, опционально содержащий информацию о состоянии конкретного скрипта
               или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>opcache_get_configuration()</strong>


id: opcache_invalidate
type: function
doc:
<comment>Description:</comment>
  Аннулирует закешированный скрипт
  
  Функция аннулирует закешированный скрипт. Если параметр <strong>$force</strong> не задан или задан как <info>false</info>,
  скрипт аннулируется, только если скрипт был модифицирован после помещения в кеш. Функция
  аннулирует только кеш в памяти, не затрагивая файловый кеш.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Путь к скрипту.
  <info>bool</info>    <strong>$force</strong>     Если установлено как <info>true</info>, кеш скрипта будет принудительно аннулирован
                     независимо от того, требуется ли это или нет

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если кеш опкодов для <strong>$filename</strong> аннулирован, либо если аннулировать нечего.
        В случае, если кеш опкодов отключён, возвращается <info>false</info>.

<comment>See Also:</comment>
   * <strong>opcache_compile_file()</strong>
   * <strong>opcache_reset()</strong>


id: opcache_is_script_cached
type: function
doc:
<comment>Description:</comment>
  Проверяет, закеширован ли скрипт в OPCache
  
  Функция проверяет, закеширован ли указанный скрипт в OPCache. Может быть использована для
  определения, прогрет ли кеш для конкретного скрипта. Функция проверяет только кеш в памяти, не
  проверяя файловый кеш.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Путь к файлу скрипта.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если <strong>$filename</strong> закеширован в OPCache, <info>false</info> если нет.

<comment>See Also:</comment>
   * <strong>opcache_compile_file()</strong>


id: opcache_reset
type: function
doc:
<comment>Description:</comment>
  Сбрасывает содержимое кеша опкодов
  
  Функция сбрасывает весь кеш. После вызова <strong>opcache_reset()</strong> все скрипты будут заново загружены,
  скомпилированы и помещены в кеш после их следующего вызова. Функция сбрасывает только кеш в
  памяти, не затрагивая файловый кеш.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если кеш опкодов был сброшен или <info>false</info>, если кеш отключён, ожидается
        перезапуск или перезапуск выполняется (смотрите <strong>opcache_get_status()</strong>).

<comment>See Also:</comment>
   * <strong>opcache_invalidate()</strong>
   * <strong>opcache_get_status()</strong>


id: openal_buffer_create
type: function
doc:
<comment>Description:</comment>
  Сгенерировать буфер OpenAL

<comment>Return:</comment>
  <info>resource</info>  Возвращает ресурс Open AL(Buffer) в случае успешного выполнения или <info>false</info> в случае
            возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_buffer_loadwav()</strong>
   * <strong>openal_buffer_data()</strong>


id: openal_buffer_data
type: function
doc:
<comment>Description:</comment>
  Загрузка буфера с данными

<comment>Param:</comment>
  <info>resource</info>  <strong>$buffer</strong>  Ресурс Open AL(Buffer) (созданный ранее с помощью <strong>openal_buffer_create()</strong>).
  <info>int</info>       <strong>$format</strong>  Формат <strong>$data</strong>, представленный одной из констант: <info>AL_FORMAT_MONO8</info>,
                     <info>AL_FORMAT_MONO16</info>, <info>AL_FORMAT_STEREO8</info> и <info>AL_FORMAT_STEREO16</info>
  <info>string</info>    <strong>$data</strong>    Блок двоичных аудиоданных в указанном формате <strong>$format</strong> и с частотой <strong>$freq</strong>.
  <info>int</info>       <strong>$freq</strong>    Частота <strong>$data</strong>, заданная в герцах.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_buffer_loadwav()</strong>
   * <strong>openal_stream()</strong>


id: openal_buffer_destroy
type: function
doc:
<comment>Description:</comment>
  Уничтожает буфер OpenAL

<comment>Param:</comment>
  <info>resource</info>  <strong>$buffer</strong>  Ресурс Open AL(Buffer) (ранее созданный с помощью <strong>openal_buffer_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_buffer_create()</strong>


id: openal_buffer_get
type: function
doc:
<comment>Description:</comment>
  Получить свойство буфера OpenAL

<comment>Param:</comment>
  <info>resource</info>  <strong>$buffer</strong>    Ресурс Open AL(Buffer) (созданный ранее с помощью <strong>openal_buffer_create()</strong>).
  <info>int</info>       <strong>$property</strong>  Одно из свойств, заданное в виде константы: <info>AL_FREQUENCY</info>, <info>AL_BITS</info>,
                       <info>AL_CHANNELS</info> и <info>AL_SIZE</info>.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает целочисленное значение, соответствующее запрошенному свойству <strong>$property</strong> или
             <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_buffer_create()</strong>


id: openal_buffer_loadwav
type: function
doc:
<comment>Description:</comment>
  Загрузить файл в формате wav в буфер

<comment>Param:</comment>
  <info>resource</info>  <strong>$buffer</strong>   Ресурс Open AL(Buffer) (ранее созданный с помощью <strong>openal_buffer_create()</strong>).
  <info>string</info>    <strong>$wavfile</strong>  Путь к файлу .wav в файловой системе local.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_buffer_data()</strong>
   * <strong>openal_stream()</strong>


id: openal_context_create
type: function
doc:
<comment>Description:</comment>
  Создать контекст обработки звука

<comment>Param:</comment>
  <info>resource</info>  <strong>$device</strong>  Ресурс Open AL(Device) (созданный ранее с помощью <strong>openal_device_create()</strong>).

<comment>Return:</comment>
  <info>resource</info>  Возвращает ресурс Open AL(Context) в случае успешного выполнения, <info>false</info> в случае
            возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_device_open()</strong>
   * <strong>openal_context_destroy()</strong>


id: openal_context_current
type: function
doc:
<comment>Description:</comment>
  Сделать указанный контекст текущим

<comment>Param:</comment>
  <info>resource</info>  <strong>$context</strong>  Ресурс Open AL(Context) (созданный ранее с помощью <strong>openal_context_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_context_create()</strong>


id: openal_context_destroy
type: function
doc:
<comment>Description:</comment>
  Уничтожает контекст

<comment>Param:</comment>
  <info>resource</info>  <strong>$context</strong>  Ресурс Open AL(Context) (созданный ранее с помощью <strong>openal_context_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_context_create()</strong>


id: openal_context_process
type: function
doc:
<comment>Description:</comment>
  Обработать указанный контекст

<comment>Param:</comment>
  <info>resource</info>  <strong>$context</strong>  Ресурс Open AL(Context) (созданный ранее с помощью <strong>openal_context_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_context_create()</strong>
   * <strong>openal_context_current()</strong>
   * <strong>openal_context_suspend()</strong>


id: openal_context_suspend
type: function
doc:
<comment>Description:</comment>
  Приостановить указанный контекст

<comment>Param:</comment>
  <info>resource</info>  <strong>$context</strong>  Ресурс Open AL(Context) (созданный ранее с помощью <strong>openal_context_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_context_create()</strong>
   * <strong>openal_context_current()</strong>
   * <strong>openal_context_process()</strong>


id: openal_device_close
type: function
doc:
<comment>Description:</comment>
  Закрыть устройство OpenAL

<comment>Param:</comment>
  <info>resource</info>  <strong>$device</strong>  Ресурс Open AL(Device) (созданный ранее с помощью <strong>openal_device_open()</strong>),
                     который нужно закрыть.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_device_open()</strong>


id: openal_device_open
type: function
doc:
<comment>Description:</comment>
  Инициализировать звуковой уровень OpenAL

<comment>Param:</comment>
  <info>string</info>  <strong>$device_desc</strong>  При необходимости открыть аудиоустройство, указав значение параметра
                        <strong>$device_desc</strong>. Если <strong>$device_desc</strong> не указан, будет использовано первое
                        аудиоустройство.

<comment>Return:</comment>
  <info>resource</info>  Возвращает ресурс Open AL(Device) в случае успешного выполнения или <info>false</info> в случае
            возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_device_close()</strong>
   * <strong>openal_context_create()</strong>


id: openal_listener_get
type: function
doc:
<comment>Description:</comment>
  Получить свойство прослушивателя

<comment>Param:</comment>
  <info>int</info>  <strong>$property</strong>  Запрашиваемое свойство, представленное одной из констант: <info>AL_GAIN</info> (float),
                  <info>AL_POSITION</info> (array(float,float,float)), <info>AL_VELOCITY</info> (array(float,float,float)) и
                  <info>AL_ORIENTATION</info> (array(float,float,float)).

<comment>Return:</comment>
  <info>mixed</info>  Возвращает число с плавающей точкой или массив чисел с плавающими точками (при
         необходимости) или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_listener_set()</strong>


id: openal_listener_set
type: function
doc:
<comment>Description:</comment>
  Установка свойства прослушивателя

<comment>Param:</comment>
  <info>int</info>    <strong>$property</strong>  Устанавливаемое свойство, представленное одной из констант: <info>AL_GAIN</info> (float),
                    <info>AL_POSITION</info> (array(float,float,float)), <info>AL_VELOCITY</info> (array(float,float,float)) и
                    <info>AL_ORIENTATION</info> (array(float,float,float)).
  <info>mixed</info>  <strong>$setting</strong>   Значение для установки, либо число с плавающей точкой, либо массив с числами с
                    плавающими точками.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_listener_get()</strong>


id: openal_source_create
type: function
doc:
<comment>Description:</comment>
  Сгенерировать источник ресурса

<comment>Return:</comment>
  <info>resource</info>  Возвращает ресурс Open AL(Source) в случае успешного выполнения или <info>false</info> в случае
            возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_set()</strong>
   * <strong>openal_source_play()</strong>
   * <strong>openal_source_destroy()</strong>


id: openal_source_destroy
type: function
doc:
<comment>Description:</comment>
  Уничтожение ресурса источника

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>  Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_create()</strong>


id: openal_source_get
type: function
doc:
<comment>Description:</comment>
  Получить свойство источника OpenAL

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>    Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).
  <info>int</info>       <strong>$property</strong>  Получаемое свойство, представленное одной из констант: <info>AL_SOURCE_RELATIVE</info>
                       (int), <info>AL_SOURCE_STATE</info> (int), <info>AL_PITCH</info> (float), <info>AL_GAIN</info> (float), <info>AL_MIN_GAIN</info>
                       (float), <info>AL_MAX_GAIN</info> (float), <info>AL_MAX_DISTANCE</info> (float), <info>AL_ROLLOFF_FACTOR</info>
                       (float), <info>AL_CONE_OUTER_GAIN</info> (float), <info>AL_CONE_INNER_ANGLE</info> (float),
                       <info>AL_CONE_OUTER_ANGLE</info> (float), <info>AL_REFERENCE_DISTANCE</info> (float), <info>AL_POSITION</info>
                       (array(float,float,float)), <info>AL_VELOCITY</info> (array(float,float,float)),
                       <info>AL_DIRECTION</info> (array(float,float,float)).

<comment>Return:</comment>
  <info>mixed</info>  Возвращает тип, связанный с извлекаемым свойством или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_create()</strong>
   * <strong>openal_source_set()</strong>
   * <strong>openal_source_play()</strong>


id: openal_source_pause
type: function
doc:
<comment>Description:</comment>
  Поставить источник на паузу

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>  Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_stop()</strong>
   * <strong>openal_source_play()</strong>
   * <strong>openal_source_rewind()</strong>


id: openal_source_play
type: function
doc:
<comment>Description:</comment>
  Начать воспроизведение источника

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>  Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_stop()</strong>
   * <strong>openal_source_pause()</strong>
   * <strong>openal_source_rewind()</strong>


id: openal_source_rewind
type: function
doc:
<comment>Description:</comment>
  Перемотать источник в начало

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>  Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_stop()</strong>
   * <strong>openal_source_pause()</strong>
   * <strong>openal_source_play()</strong>


id: openal_source_set
type: function
doc:
<comment>Description:</comment>
  Установить свойство источника

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>    Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).
  <info>int</info>       <strong>$property</strong>  Устанавливаемое свойство, представляющее одну из констант: <info>AL_BUFFER</info> (OpenAL
                       (источник)), <info>AL_LOOPING</info> (bool), <info>AL_SOURCE_RELATIVE</info> (int), <info>AL_SOURCE_STATE</info>
                       (int), <info>AL_PITCH</info> (float), <info>AL_GAIN</info> (float), <info>AL_MIN_GAIN</info> (float), <info>AL_MAX_GAIN</info>
                       (float), <info>AL_MAX_DISTANCE</info> (float), <info>AL_ROLLOFF_FACTOR</info> (float),
                       <info>AL_CONE_OUTER_GAIN</info> (float), <info>AL_CONE_INNER_ANGLE</info> (float), <info>AL_CONE_OUTER_ANGLE</info>
                       (float), <info>AL_REFERENCE_DISTANCE</info> (float), <info>AL_POSITION</info>
                       (array(float,float,float)), <info>AL_VELOCITY</info> (array(float,float,float)),
                       <info>AL_DIRECTION</info> (array(float,float,float)).
  <info>mixed</info>     <strong>$setting</strong>   Значение для присвоения указанному свойству <strong>$property</strong>. Обратитесь к описанию
                       параметра <strong>$property</strong> для описания ожидаемых параметров.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_create()</strong>
   * <strong>openal_source_get()</strong>
   * <strong>openal_source_play()</strong>


id: openal_source_stop
type: function
doc:
<comment>Description:</comment>
  Остановить воспроизведение источника

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>  Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_play()</strong>
   * <strong>openal_source_pause()</strong>
   * <strong>openal_source_rewind()</strong>


id: openal_stream
type: function
doc:
<comment>Description:</comment>
  Начать потоковую передачу с источника

<comment>Param:</comment>
  <info>resource</info>  <strong>$source</strong>  Ресурс Open AL(Source) (созданный ранее с помощью <strong>openal_source_create()</strong>).
  <info>int</info>       <strong>$format</strong>  Формат данных <strong>$data</strong>, представленный одной из констант: <info>AL_FORMAT_MONO8</info>,
                     <info>AL_FORMAT_MONO16</info>, <info>AL_FORMAT_STEREO8</info> и <info>AL_FORMAT_STEREO16</info>
  <info>int</info>       <strong>$rate</strong>    Частота передачи данных в поток задаётся в герцах.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает ресурс потока в случае успешного выполнения или <info>false</info> в случае
                  возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openal_source_create()</strong>
   * <strong>fwrite()</strong>


id: opendir
type: function
doc:
<comment>Description:</comment>
  Открывает дескриптор каталога
  
  Открывает дескриптор каталога для последующего использования с функциями <strong>closedir()</strong>, <strong>readdir()</strong> и
  <strong>rewinddir()</strong>.

<comment>Param:</comment>
  <info>string</info>         <strong>$directory</strong>  Путь к открываемому каталогу
  <info>resource|null</info>  <strong>$context</strong>    Для описания параметра <strong>$context</strong> обратитесь к разделу Потоки.

<comment>Return:</comment>
  <info>resource|false</info>  Возвращает дескриптор каталога (<info>resource</info>) в случае успешного выполнения или <info>false</info>
                  в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>is_dir()</strong>
   * <strong>readdir()</strong>
   * <strong>dir()</strong>


id: openlog
type: function
doc:
<comment>Description:</comment>
  Открывает соединение к системному журналу
  
  Функция <strong>openlog()</strong> открывает соединение к системному журналу для программы.
  
  Использование <strong>openlog()</strong> не является обязательным. Эта функция при необходимости будет вызвана
  функцией <strong>syslog()</strong> автоматически, при этом параметр <strong>$prefix</strong> будет по умолчанию равен <info>false</info>.

<comment>Param:</comment>
  <info>string</info>  <strong>$prefix</strong>    Строка <strong>$prefix</strong> добавляется к каждому сообщению.
  <info>int</info>     <strong>$flags</strong>     Аргумент <strong>$flags</strong> используется для указания используемых опций журналирования при
                     создании записи журнала. Опции <strong>openlog()</strong>КонстантаОписание<info>LOG_CONS</info> если при
                     отправке данных системному журналу происходит ошибка, перевести вывод
                     непосредственно в системную консоль <info>LOG_NDELAY</info> открыть соединение с журналом
                     без задержки <info>LOG_ODELAY</info> (по умолчанию) отложить открытие соединения до вывода
                     первого сообщения в журнал <info>LOG_PERROR</info>выводить вместе со стандартной ошибкой
                     сообщение журнала<info>LOG_PID</info>добавить PID к каждому сообщению Можно использовать
                     одну или сразу несколько опций. При использовании нескольких опций необходимо
                     разделять их <return>OR</return>, к примеру, для открытия соединения без задержки, записи в
                     консоль и включения PID в каждое из сообщений, необходима следующая комбинация
                     опций: <return>LOG_CONS | LOG_NDELAY | LOG_PID</return>
  <info>int</info>     <strong>$facility</strong>  Параметр <strong>$facility</strong> используется для определения типа программы, создавшей
                     сообщение журнала. Это позволяет определить (в конфигурации syslog) как будут
                     обработаны сообщения журнала, поступающие из разных объектов. Типы программ
                     <strong>openlog()</strong>КонстантаОписание<info>LOG_AUTH</info> сообщения по безопасности/авторизации
                     (необходимо взамен использовать <info>LOG_AUTHPRIV</info> в системах, где эта константа
                     предопределена) <info>LOG_AUTHPRIV</info>сообщения по безопасности/авторизации
                     (частное)<info>LOG_CRON</info>планировщик задач (cron и at)<info>LOG_DAEMON</info>другие системные
                     службы<info>LOG_KERN</info>сообщения ядра<info>LOG_LOCAL0</info> ... <info>LOG_LOCAL7</info>зарезервированы для
                     локального использования, недоступны в Windows<info>LOG_LPR</info>подсистема печати
                     LPR<info>LOG_MAIL</info>почтовая подсистема<info>LOG_NEWS</info>подсистема новостей
                     USENET<info>LOG_SYSLOG</info>внутренние сообщения syslogd<info>LOG_USER</info>общие сообщения на уровне
                     пользователя<info>LOG_UUCP</info>подсистема UUCP
                     
                     <info>LOG_USER</info> - единственный верный тип журналирования в операционных системах
                     Windows

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>syslog()</strong>
   * <strong>closelog()</strong>


id: openssl_cipher_iv_length
type: function
doc:
<comment>Description:</comment>
  Получает длину инициализирующего вектора шифра
  
  Возвращает длину инициализирующего вектора шифра.

<comment>Param:</comment>
  <info>string</info>  <strong>$cipher_algo</strong>  Метод шифрования. Список потенциальных значений можно получить с помощью
                        <strong>openssl_get_cipher_methods()</strong>.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает длину инициализирующего вектора шифра или <info>false</info>.


id: openssl_cipher_key_length
type: function
doc:
<comment>Description:</comment>
  Получает длину ключа шифрования
  
  Получает длину ключа шифрования.

<comment>Param:</comment>
  <info>string</info>  <strong>$cipher_algo</strong>  Метод шифрования, список возможных значений смотрите в описании функции
                        <strong>openssl_get_cipher_methods()</strong>.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает длину шифра в случае успешного выполнения или <info>false</info> в случае возникновения
             ошибки.


id: openssl_cms_decrypt
type: function
doc:
<comment>Description:</comment>
  Расшифровывает CMS-сообщение
  
  Расшифровывает CMS-сообщение.

<comment>Param:</comment>
  <info>string</info>                                                     <strong>$input_filename</strong>   Имя файла,
                                                                               содержащего
                                                                               зашифрованное
                                                                               содержимое.
  <info>string</info>                                                     <strong>$output_filename</strong>  Имя файла для
                                                                               хранения
                                                                               расшифрованного
                                                                               содержимого.
  <info>OpenSSLCertificate|string</info>                                  <strong>$certificate</strong>      Имя файла,
                                                                               содержащего
                                                                               сертификат
                                                                               получателя.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string|null</info>  <strong>$private_key</strong>      Имя файла,
                                                                               содержащего ключ
                                                                               PKCS#8.
  <info>int</info>                                                        <strong>$encoding</strong>         Кодировка входного
                                                                               файла.
                                                                               <info>OPENSSL_ENCODING_SMIME</info>,
                                                                               <info>OPENSSL_ENCODING_DER</info>
                                                                               или
                                                                               <info>OPENSSL_ENCODING_PEM</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_cms_encrypt
type: function
doc:
<comment>Description:</comment>
  Зашифровывает CMS-сообщение
  
  Шифрует содержимое для одного или нескольких получателей на основе переданных ему сертификатов.

<comment>Param:</comment>
  <info>string</info>                           <strong>$input_filename</strong>   Файл, который нужно зашифровать.
  <info>string</info>                           <strong>$output_filename</strong>  Выходной файл.
  <info>OpenSSLCertificate|array|string</info>  <strong>$certificate</strong>      Получатели, для которых производится
                                                     шифрование.
  <info>array|null</info>                       <strong>$headers</strong>          Заголовки, которые будут включены при
                                                     использовании S/MIME.
  <info>int</info>                              <strong>$flags</strong>            Флаги, передаваемые CMS_sign.
  <info>int</info>                              <strong>$encoding</strong>         Кодировка для вывода. <info>OPENSSL_ENCODING_SMIME</info>,
                                                     <info>OPENSSL_ENCODING_DER</info> или <info>OPENSSL_ENCODING_PEM</info>.
  <info>int</info>                              <strong>$cipher_algo</strong>      Используемый алгоритм шифрования.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_cms_read
type: function
doc:
<comment>Description:</comment>
  Экспортирует файл CMS в массив сертификатов PEM
  
  Работает аналогично <strong>openssl_pkcs7_read()</strong>.
  
  К настоящему времени эта функция ещё не была документирована; для ознакомления доступен только
  список аргументов.

<comment>Param:</comment>
  <info>string</info>  <strong>$input_filename</strong>  
  <info>array</info>   <strong>$certificates</strong>    

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_cms_sign
type: function
doc:
<comment>Description:</comment>
  Подписывает файл
  
  Подписывает файл сертификатом X.509 и ключом.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$input_filename</strong>                   Имя файла
                                                                                          для
                                                                                          подписи.
  <info>string</info>                                                <strong>$output_filename</strong>                  Имя файла
                                                                                          для
                                                                                          хранения
                                                                                          результатов.
  <info>OpenSSLCertificate|string</info>                             <strong>$certificate</strong>                      Сертификат
                                                                                          подписи.
                                                                                          Смотрите
                                                                                          параметры
                                                                                          ключа/сертификата
                                                                                          для
                                                                                          получения
                                                                                          списка
                                                                                          допустимых
                                                                                          значений.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>                      Ключ,
                                                                                          связанный
                                                                                          с
                                                                                          <strong>$certificate</strong>.
                                                                                          Смотрите
                                                                                          параметры
                                                                                          ключа/сертификата
                                                                                          для
                                                                                          получения
                                                                                          списка
                                                                                          допустимых
                                                                                          значений.
  <info>array|null</info>                                            <strong>$headers</strong>                          Массив
                                                                                          заголовков
                                                                                          для
                                                                                          включения
                                                                                          в вывод
                                                                                          S/MIME.
  <info>int</info>                                                   <strong>$flags</strong>                            Флаги,
                                                                                          передаваемые
                                                                                          <strong>cms_sign()</strong>.
  <info>int</info>                                                   <strong>$encoding</strong>                         Кодировка
                                                                                          выходного
                                                                                          файла.
                                                                                          <info>OPENSSL_ENCODING_SMIME</info>,
                                                                                          <info>OPENSSL_ENCODING_DER</info>
                                                                                          или
                                                                                          <info>OPENSSL_ENCODING_PEM</info>.
  <info>string|null</info>                                           <strong>$untrusted_certificates_filename</strong>  
                                                                                          Промежуточные
                                                                                          сертификаты,
                                                                                          включаемые
                                                                                          в подпись.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_cms_verify
type: function
doc:
<comment>Description:</comment>
  Проверяет подпись CMS
  
  Проверяет подпись CMS, прикреплённую или отсоединённую, с указанной кодировкой.

<comment>Param:</comment>
  <info>string</info>       <strong>$input_filename</strong>                   Входной файл.
  <info>int</info>          <strong>$flags</strong>                            Флаги, передаваемые <strong>cms_verify()</strong>.
  <info>string|null</info>  <strong>$certificates</strong>                     Файл с сертификатом подписавшего и, по выбору,
                                                 промежуточными сертификатами.
  <info>array</info>        <strong>$ca_info</strong>                          Массив, содержащий самозаверенные сертификаты
                                                 центра сертификации.
  <info>string|null</info>  <strong>$untrusted_certificates_filename</strong>  Файл, содержащий дополнительные промежуточные
                                                 сертификаты.
  <info>string|null</info>  <strong>$content</strong>                          Файл, указывающий на содержимое, когда подписи
                                                 отсоединены.
  <info>string|null</info>  <strong>$pk7</strong>                              
  <info>string|null</info>  <strong>$sigfile</strong>                          Файл, в который нужно сохранить подпись.
  <info>int</info>          <strong>$encoding</strong>                         Кодировка входного файла. <info>OPENSSL_ENCODING_SMIME</info>,
                                                 <info>OPENSSL_ENCODING_DER</info> или <info>OPENSSL_ENCODING_PEM</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_csr_export
type: function
doc:
<comment>Description:</comment>
  Экспортирует CSR в виде строки
  
  <strong>openssl_csr_export()</strong> записывает запрос на подпись сертификата <strong>$csr</strong> в формате PEM в переменную
  <strong>$output</strong>, которая передаётся по ссылке.

<comment>Param:</comment>
  <info>OpenSSLCertificateSigningRequest|string</info>  <strong>$csr</strong>      Для получения списка допустимых значений
                                                     смотрите параметры CSR.
  <info>string</info>                                   <strong>$output</strong>   В случае успешного выполнения, в этой
                                                     переменной будет сохранён CSR в формате PEM.
  <info>bool</info>                                     <strong>$no_text</strong>  Необязательный параметр <strong>$notext</strong> влияет на
                                                     детализацию сообщений вывода; если он
                                                     установлен в <info>false</info>,
                                                     то в вывод добавляется дополнительная
                                                     человекочитаемая информация. Значением по
                                                     умолчанию
                                                     <strong>$notext</strong> является <info>true</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_csr_export_to_file()</strong>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_csr_sign()</strong>


id: openssl_csr_export_to_file
type: function
doc:
<comment>Description:</comment>
  Экспортирует CSR в файл
  
  <strong>openssl_csr_export_to_file()</strong> записывает запрос на подпись сертификата <strong>$csr</strong> в формате PEM в файл
  <strong>$output_filename</strong>.

<comment>Param:</comment>
  <info>OpenSSLCertificateSigningRequest|string</info>  <strong>$csr</strong>              Для получения списка допустимых
                                                             значений смотрите параметры CSR.
  <info>string</info>                                   <strong>$output_filename</strong>  Путь к файлу.
  <info>bool</info>                                     <strong>$no_text</strong>          Необязательный параметр <strong>$notext</strong> влияет
                                                             на детализацию сообщений вывода; если
                                                             он установлен в <info>false</info>,
                                                             то в вывод добавляется дополнительная
                                                             человекочитаемая информация. Значением
                                                             по умолчанию
                                                             <strong>$notext</strong> является <info>true</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_csr_export()</strong>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_csr_sign()</strong>


id: openssl_csr_get_public_key
type: function
doc:
<comment>Description:</comment>
  Возвращает открытый ключ CSR
  
  <strong>openssl_csr_get_public_key()</strong> извлекает открытый ключ из <strong>$csr</strong> и подготавливает его для
  использования в других функциях.

<comment>Param:</comment>
  <info>OpenSSLCertificateSigningRequest|string</info>  <strong>$csr</strong>          Для получения списка допустимых значений
                                                         смотрите параметры CSR.
  <info>bool</info>                                     <strong>$short_names</strong>  Этот параметр игнорируется

<comment>Return:</comment>
  <info>OpenSSLAsymmetricKey|false</info>  Возвращает <class>OpenSSLAsymmetricKey</class> в случае успешного выполнения или
                              <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_csr_get_subject()</strong>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_pkey_get_details()</strong>
   * <strong>openssl_pkey_export_to_file()</strong>
   * <strong>openssl_pkey_export()</strong>


id: openssl_csr_get_subject
type: function
doc:
<comment>Description:</comment>
  Возвращает субъект CSR
  
  <strong>openssl_csr_get_subject()</strong> возвращает известную об субъекте информацию закодированную в <strong>$csr</strong>,
  включая поля commonName (CN), organizationName (O), countryName (C) и т.д.

<comment>Param:</comment>
  <info>OpenSSLCertificateSigningRequest|string</info>  <strong>$csr</strong>          Для получения списка допустимых значений
                                                         смотрите параметры CSR.
  <info>bool</info>                                     <strong>$short_names</strong>  <strong>$shortnames</strong> определяет, как данные
                                                         индексируются в массиве, если <strong>$shortnames</strong>
                                                         задан как <info>true</info> (по умолчанию), то поля
                                                         будут индексированы именами в коротком
                                                         формате, в противном случае будут
                                                         использованы длинные имена. Например, CN -
                                                         короткое имя для commonName.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает ассоциативный массив с описанием субъекта или <info>false</info> в случае возникновения
               ошибки.

<comment>See Also:</comment>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_csr_get_public_key()</strong>
   * <strong>openssl_x509_parse()</strong>


id: openssl_csr_new
type: function
doc:
<comment>Description:</comment>
  Генерирует CSR
  
  <strong>openssl_csr_new()</strong> создаёт новый CSR основываясь на информации указанной в параметре
  <strong>$distinguished_names</strong>.
  
  Для корректной работы этой функции должен существовать правильный openssl.cnf. Для более подробной
  информации смотрите замечания под разделом установки.

<comment>Param:</comment>
  <info>array</info>                 <strong>$distinguished_names</strong>  Уникальное имя (Distinguished Name) или поля субъекта
                                              для использования в сертификате.
  <info>OpenSSLAsymmetricKey</info>  <strong>$private_key</strong>          Параметр <strong>$private_key</strong> должен быть задан закрытым
                                              ключом ранее сгенерированным функцией
                                              <strong>openssl_pkey_new()</strong> (или полученный с помощью любой
                                              другой функции семейства openssl_pkey).
                                              Соответствующая открытая часть ключа будет
                                              использована для подписания CSR.
  <info>array|null</info>            <strong>$options</strong>              По умолчанию для инициализации запроса используется
                                              информация из вашего системного <return>openssl.conf</return>. Вы
                                              можете указать секцию конфигурационного файла путём
                                              задания ключа <return>config_section_section</return> в <strong>$options</strong>.
                                              Также вы можете задать альтернативный файл
                                              конфигурации openssl путём задания ключа <return>config</return>
                                              значением пути до него. Соответствие ключей, указанных
                                              в <strong>$options</strong> ключам из <return>openssl.conf</return> представлено ниже.
                                              Переопределение конфигурацииКлюч
                                              <strong>$options</strong>ТипСоответствие в
                                              <return>openssl.conf</return>Описаниеdigest_alg<info>string</info>default_mdОдин из
                                              методов
                                              <strong>openssl_get_md_methods()</strong>x509_extensions<info>string</info>x509_extensionsОпределяет,
                                              какое расширение должно использоваться для создания
                                              сертификата
                                              x509req_extensions<info>string</info>req_extensionsОпределяет,
                                              какое расширение должно использоваться для создания
                                              CSRprivate_key_bits<info>int</info>default_bitsЗадаёт, сколько бит
                                              должно использоваться для генерации закрытого
                                              ключаprivate_key_type<info>int</info>noneЗадаёт тип создаваемого
                                              закрытого ключа. Одна из констант:
                                              <info>OPENSSL_KEYTYPE_DSA</info>, <info>OPENSSL_KEYTYPE_DH</info>,
                                              <info>OPENSSL_KEYTYPE_RSA</info> или <info>OPENSSL_KEYTYPE_EC</info>. По
                                              умолчанию <info>OPENSSL_KEYTYPE_RSA</info>.
                                              encrypt_key<info>bool</info>encrypt_keyДолжен ли шифроваться
                                              (паролем) экспортируемый
                                              ключ?encrypt_key_cipher<info>int</info>none Одна из констант
                                              шифров. curve_name<info>string</info>none Одно из
                                              <strong>openssl_get_curve_names()</strong>. config<info>string</info>N/A Путь до
                                              альтернативного файла конфигурации openssl.conf.
  <info>array|null</info>            <strong>$extra_attributes</strong>     <strong>$extra_attributes</strong> используется для указания
                                              дополнительных опций для CSR. И <strong>$distinguished_names</strong>,
                                              и <strong>$extra_attributes</strong> являются ассоциативными массивами,
                                              ключи которых преобразуются в OI-ы и применяются к
                                              соответствующим частям запроса.

<comment>Return:</comment>
  <info>OpenSSLCertificateSigningRequest|false</info>  Возвращает CSR или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_csr_sign()</strong>


id: openssl_csr_sign
type: function
doc:
<comment>Description:</comment>
  Подписать CSR с помощью другого сертификата (или им же) и создать сертификат
  
  <strong>openssl_csr_sign()</strong> создаёт сертификат x509 из заданного CSR.
  
  Для корректной работы этой функции должен существовать правильный openssl.cnf. Для более подробной
  информации смотрите замечания под разделом установки.

<comment>Param:</comment>
  <info>OpenSSLCertificateSigningRequest|string</info>               <strong>$csr</strong>             Созданный с помощью
                                                                         <strong>openssl_csr_new()</strong> CSR.
                                                                         Также может быть путём на
                                                                         кодированный в PEM CSR,
                                                                         если задано как
                                                                         file://path/to/csr или
                                                                         экспортированной строкой,
                                                                         созданной с помощью
                                                                         <strong>openssl_csr_export()</strong>.
  <info>OpenSSLCertificate|string|null</info>                        <strong>$ca_certificate</strong>  Создаваемый сертификат
                                                                         будет подписан
                                                                         <strong>$ca_certificate</strong>. Если
                                                                         <strong>$ca_certificate</strong> задан как
                                                                         <info>null</info>, то будет сгенерирован
                                                                         самоподписанный сертификат.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>     <strong>$private_key</strong> - секретный
                                                                         ключ, соответствующий
                                                                         <strong>$ca_certificate</strong>.
  <info>int</info>                                                   <strong>$days</strong>            <strong>$days</strong> - время жизни
                                                                         создаваемого сертификата, в
                                                                         днях.
  <info>array|null</info>                                            <strong>$options</strong>         Можно тонко настроить
                                                                         подпись CSR с помощью
                                                                         <strong>$options</strong>. Подробности
                                                                         смотрите в описании функции
                                                                         <strong>openssl_csr_new()</strong>, в
                                                                         разделе посвящённом
                                                                         параметру <strong>$options</strong>.
  <info>int</info>                                                   <strong>$serial</strong>          Опциональный серийный номер
                                                                         выпускаемого сертификата.
                                                                         Если не указано, то по
                                                                         умолчанию будет использован
                                                                         0.

<comment>Return:</comment>
  <info>OpenSSLCertificate|false</info>  Возвращает <class>OpenSSLCertificate</class> в случае успешного выполнения или <info>false</info> в
                            случае возникновения ошибки.


id: openssl_decrypt
type: function
doc:
<comment>Description:</comment>
  Расшифровывает данные
  
  Берет необработанную или кодированную в base64 строку и расшифровывает её с помощью заданного
  метода и ключа.

<comment>Param:</comment>
  <info>string</info>       <strong>$data</strong>         Данные для расшифровки.
  <info>string</info>       <strong>$cipher_algo</strong>  Метод шифрования. Список доступных методов можно получить с помощью
                             функции <strong>openssl_get_cipher_methods()</strong>.
  <info>string</info>       <strong>$passphrase</strong>   Ключ.
  <info>int</info>          <strong>$options</strong>      <strong>$options</strong> можно задать одной из констант: <info>OPENSSL_RAW_DATA</info>,
                             <info>OPENSSL_ZERO_PADDING</info>.
  <info>string</info>       <strong>$iv</strong>           Ненулевой инициализирующий вектор.
  <info>string|null</info>  <strong>$tag</strong>          Тег аутентификации в режиме шифрования AEAD. Если он некорректен, то
                             аутентификация завершится неудачей и функция вернёт <info>false</info>.
                             
                             Длина <strong>$tag</strong> не проверяется функцией. Вызывающая сторона несёт
                             ответственность за то, чтобы длина тега соответствовала длине тега,
                             полученного при вызове <strong>openssl_encrypt()</strong>. В противном случае
                             дешифрование может быть успешным, если данный тег совпадает только с
                             началом правильного тега.
  <info>string</info>       <strong>$aad</strong>          Дополнительные аутентифицированные данные.

<comment>Return:</comment>
  <info>string|false</info>  Расшифрованная строка или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_encrypt()</strong>


id: openssl_dh_compute_key
type: function
doc:
<comment>Description:</comment>
  Вычисляет общий секретный ключ для значения удалённого открытого ключа DH и локального ключа DH
  
  Общий секретный ключ, возвращаемый <strong>openssl_dh_compute_key()</strong> часто используется в качестве ключа
  шифрования для секретного взаимодействия с удалённой стороной (remote party). Это известно как
  алгоритм обмена ключами алгоритма Диффи-Хеллмана.
  
  ECDH поддерживается только начиная с PHP 8.1.0 и OpenSSL 3.0.0.

<comment>Param:</comment>
  <info>string</info>                <strong>$public_key</strong>   Открытый ключ DH удалённой стороны.
  <info>OpenSSLAsymmetricKey</info>  <strong>$private_key</strong>  Локальный закрытый ключ DH, соответствующий открытому ключу
                                      для обмена с удалённой стороной.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает общий секретный ключ или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_pkey_new()</strong>
   * <strong>openssl_pkey_get_details()</strong>
   * <strong>openssl_pkey_get_private()</strong>
   * <strong>openssl_pkey_get_public()</strong>


id: openssl_digest
type: function
doc:
<comment>Description:</comment>
  Вычисление дайджеста
  
  Вычисляет значение дайджеста для переданных данных с помощью указанного метода. Возвращает
  необработанную строку или строку шестнадцатеричных чисел.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>         Данные.
  <info>string</info>  <strong>$digest_algo</strong>  Метод вычисления дайджеста, например "sha256". Список доступных методов
                        можно получить с помощью <strong>openssl_get_md_methods()</strong>.
  <info>bool</info>    <strong>$binary</strong>       Если <info>true</info>, то будет возвращена необработанная строка. Иначе будет возвращена
                        строка шестнадцатеричных чисел.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает вычисленный дайджест или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_get_md_methods()</strong>


id: openssl_encrypt
type: function
doc:
<comment>Description:</comment>
  Шифрует данные
  
  Шифрует данные с заданным шифром и ключом и возвращает необработанную строку, либо строку,
  закодированную в base64

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>         Данные для шифрования.
  <info>string</info>  <strong>$cipher_algo</strong>  Метод шифрования. Список доступных методов можно получить с помощью функции
                        <strong>openssl_get_cipher_methods()</strong>.
  <info>string</info>  <strong>$passphrase</strong>   Кодовая фраза. Если кодовая фраза укорочена, чем ожидалось, она
                        автоматически дополняется символами <return>NUL</return>; если кодовая фраза длиннее, чем
                        ожидалось, она автоматически усекается.
  <info>int</info>     <strong>$options</strong>      <strong>$options</strong> можно задать одной из констант: <info>OPENSSL_RAW_DATA</info>,
                        <info>OPENSSL_ZERO_PADDING</info>.
  <info>string</info>  <strong>$iv</strong>           Ненулевой инициализирующий вектор.
  <info>string</info>  <strong>$tag</strong>          Тег аутентификации, передаваемый по ссылке, в режиме шифрования AEAD (GCM
                        или CCM).
  <info>string</info>  <strong>$aad</strong>          Дополнительные аутентифицированные данные.
  <info>int</info>     <strong>$tag_length</strong>   Длина параметра <strong>$tag</strong>. Для режима GCM должно быть от 4 до 16.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает зашифрованную строку или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_decrypt()</strong>


id: openssl_error_string
type: function
doc:
<comment>Description:</comment>
  Возвращает сообщение об ошибке openSSL
  
  <strong>openssl_error_string()</strong> возвращает сообщение последней произошедшей ошибки библиотеки openSSL.
  Сообщения об ошибках находятся в очереди, так что эту функцию можно вызывать несколько раз для
  получения всей информации. При этом последнее сообщение самое свежее.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает строку с сообщением об ошибке или <info>false</info>, если сообщений больше нет.


id: openssl_free_key
type: function
doc:
<comment>Description:</comment>
  Высвобождение ресурса ключа
  
  <strong>openssl_free_key()</strong> удаляет ключ, связанный с заданным идентификатором <strong>$key</strong> из памяти.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey</info>  <strong>$key</strong>  

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.


id: openssl_get_cert_locations
type: function
doc:
<comment>Description:</comment>
  Получить доступные месторасположения сертификатов
  
  <strong>openssl_get_cert_locations()</strong> возвращает массив с информацией о доступных хранилищах, в которых
  будет происходить поиск SSL сертификатов.

<comment>Return:</comment>
  <info>array</info>  Возвращает массив с месторасположением хранилищ сертификатов.


id: openssl_get_cipher_methods
type: function
doc:
<comment>Description:</comment>
  Получить список доступных алгоритмов шифрования
  
  Возвращает список доступных алгоритмов шифрования.

<comment>Param:</comment>
  <info>bool</info>  <strong>$aliases</strong>  Если хотите включить псевдонимы шифров в возвращаемый массив, то установите этот
                  параметр в значение <info>true</info>.

<comment>Return:</comment>
  <info>array</info>  Массив (<info>array</info>) доступных методов шифрования. Обратите внимание, что до OpenSSL 1.1.1 методы
         шифрования возвращались в верхнем и нижнем регистре; с OpenSSL 1.1.1 возвращаются только
         строчные варианты.

<comment>See Also:</comment>
   * <strong>openssl_get_md_methods()</strong>


id: openssl_get_curve_names
type: function
doc:
<comment>Description:</comment>
  Список доступных имён кривых для ECC
  
  Возвращает список доступных имён кривых для использования в эллиптической криптографии (ECC) для
  операций с открытым/закрытым ключом. Две наиболее стандартизованных/поддерживаемых кривых:
  prime256v1 (NIST P-256) и secp384r1 (NIST P-384). Приближенные эквивалентности размеров ключей
  AES, RSA, DSA и ECCAES размер симметричного ключа (Биты)Размер ключа RSA и DSA (Биты)Размер ключа
  ECC (Биты)80102416011220482241283072256192768038425615360512 NIST рекомендует использовать кривые
  ECC как минимум в 256 бит.

<comment>Return:</comment>
  <info>array|false</info>  Массив с доступными именами кривых или <info>false</info> в случае возникновения ошибки.


id: openssl_get_md_methods
type: function
doc:
<comment>Description:</comment>
  Получить список доступных методов хеширования
  
  Возвращает список доступных методов хеширования.

<comment>Param:</comment>
  <info>bool</info>  <strong>$aliases</strong>  Если хотите, чтобы в результирующий массив были также включены псевдонимы, то
                  установите этот параметр в значение <info>true</info>.

<comment>Return:</comment>
  <info>array</info>  Массив с доступными методами хеширования.

<comment>See Also:</comment>
   * <strong>openssl_digest()</strong>
   * <strong>openssl_get_cipher_methods()</strong>


id: openssl_get_privatekey
type: function
doc:
<comment>Description:</comment>
  Псевдоним openssl_pkey_get_private
  
  Функция является псевдонимом:  <strong>openssl_pkey_get_private()</strong>.


id: openssl_get_publickey
type: function
doc:
<comment>Description:</comment>
  Псевдоним openssl_pkey_get_public
  
  Функция является псевдонимом:  <strong>openssl_pkey_get_public()</strong>.


id: openssl_open
type: function
doc:
<comment>Description:</comment>
  Открыть запечатанные данные
  
  <strong>openssl_open()</strong> открывает (дешифрует) <strong>$data</strong>, используя секретный ключ, связанный с идентификатором
  <strong>$private_key</strong> и ключ обёртки <strong>$encrypted_key</strong>, и заполняет <strong>$output</strong> расшифрованными данными. Ключ
  обёртки создаётся при запечатывании данных и может использоваться только с одним единственным
  секретным ключом. Более подробно можно прочитать на странице описания функции <strong>openssl_seal()</strong>.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$data</strong>           
  <info>string</info>                                                <strong>$output</strong>         При удачном завершении,
                                                                        переменная переданная в этом
                                                                        параметре будет содержать
                                                                        открытые данные.
  <info>string</info>                                                <strong>$encrypted_key</strong>  
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>    
  <info>string</info>                                                <strong>$cipher_algo</strong>    Метод шифрования.  Значение
                                                                        по умолчанию (<return>'RC4'</return>)
                                                                        считается небезопасным.
                                                                        Настоятельно рекомендуется
                                                                        явно указывать метод
                                                                        безопасного шифрования.
                                                                        
                                                                        Значение по умолчанию
                                                                        (<return>'RC4'</return>) считается
                                                                        небезопасным. Настоятельно
                                                                        рекомендуется явно указывать
                                                                        метод безопасного
                                                                        шифрования.
  <info>string|null</info>                                           <strong>$iv</strong>             Инициализирующий вектор.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_seal()</strong>


id: openssl_pbkdf2
type: function
doc:
<comment>Description:</comment>
  Генерирует строки PKCS5 v2 PBKDF2
  
  <strong>openssl_pbkdf2()</strong> вычисляет PBKDF2 (Password-Based Key Derivation Function 2), функцию деривации
  ключа, определённую в PKCS5 v2.

<comment>Param:</comment>
  <info>string</info>  <strong>$password</strong>     Пароль, из которого будет сгенерирован ключ.
  <info>string</info>  <strong>$salt</strong>         PBKDF2 рекомендует использовать криптографическую соль как минимум 64 бита
                        (8 байт) длиной.
  <info>int</info>     <strong>$key_length</strong>   Длина генерируемого ключа.
  <info>int</info>     <strong>$iterations</strong>   Количество итераций. NIST рекомендует как минимум 10,000.
  <info>string</info>  <strong>$digest_algo</strong>  Опциональный алгоритм хеширования полученный из <strong>openssl_get_md_methods()</strong>. По
                        умолчанию SHA-1.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает необработанную бинарную строку или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>hash_pbkdf2()</strong>
   * <strong>openssl_get_md_methods()</strong>


id: openssl_pkcs12_export
type: function
doc:
<comment>Description:</comment>
  Экспортирует совместимый с PKCS#12 файл хранилища сертификатов в переменную
  
  <strong>openssl_pkcs12_export()</strong> сохраняет <strong>$x509</strong> в переменную <strong>$out</strong> в формате PKCS#12.

<comment>Param:</comment>
  <info></info>                                                      <strong>$x509</strong>         Для списка корректных значений
                                                                      смотрите Параметры
                                                                      ключей/сертификатов.
  <info>string</info>                                                <strong>$output</strong>       В случае успешного выполнения
                                                                      будет содержать PKCS#12.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>  Компонент закрытого ключа
                                                                      файла PKCS#12. Список
                                                                      допустимых значений смотрите
                                                                      на странице параметров
                                                                      открытого/закрытого ключа.
  <info>string</info>                                                <strong>$passphrase</strong>   Пароль для шифрования файла
                                                                      PKCS#12.
  <info>array</info>                                                 <strong>$options</strong>      Массив опций. Не описанные
                                                                      здесь ключи будут
                                                                      проигнорированы.
                                                                      КлючОписание<return>"extracerts"</return>массив
                                                                      дополнительных сертификатов
                                                                      или один сертификат для
                                                                      включения в файл
                                                                      PKCS#12.<return>"friendly_name"</return>строка
                                                                      для использования сертификатом
                                                                      и ключом

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkcs12_export_to_file
type: function
doc:
<comment>Description:</comment>
  Экспортирует в совместимый с PKCS#12 файл хранилища сертификатов
  
  <strong>openssl_pkcs12_export_to_file()</strong> сохраняет <strong>$certificate</strong> в файл <strong>$output_filename</strong> в формате PKCS#12.

<comment>Param:</comment>
  <info></info>                                                      <strong>$x509</strong>             Для списка корректных
                                                                          значений смотрите
                                                                          Параметры
                                                                          ключей/сертификатов.
  <info>string</info>                                                <strong>$output_filename</strong>  Путь до файла.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>      Закрытый компонент ключа
                                                                          файла PKCS#12. Допустимые
                                                                          значения смотрите
                                                                          Параметры
                                                                          закрытого/открытого ключа.
  <info>string</info>                                                <strong>$passphrase</strong>       Пароль для разблокировки
                                                                          файла PKCS#12.
  <info>array</info>                                                 <strong>$options</strong>          Массив опций. Не описанные
                                                                          здесь ключи будут
                                                                          проигнорированы.
                                                                          КлючОписание<return>"extracerts"</return>массив
                                                                          дополнительных
                                                                          сертификатов или один
                                                                          сертификат для включения в
                                                                          файл
                                                                          PKCS#12.<return>"friendly_name"</return>строка
                                                                          для использования
                                                                          сертификатом и ключом

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkcs12_read
type: function
doc:
<comment>Description:</comment>
  Разбирает хранилище сертификатов PKCS#12 в массив
  
  <strong>openssl_pkcs12_read()</strong> разбирает хранилище сертификатов PKCS#12, заданное в <strong>$pkcs12</strong> и помещает в
  массив <strong>$certificates</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$pkcs12</strong>        Содержимое хранилища сертификатов, а не его имя файла.
  <info>array</info>   <strong>$certificates</strong>  В случае успешного выполнения будет содержать данные хранилища сертификата
                         (Certificate Store Data).
  <info>string</info>  <strong>$passphrase</strong>    Пароль для расшифровки файла PKCS#12.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkcs7_decrypt
type: function
doc:
<comment>Description:</comment>
  Расшифровать сообщение, зашифрованное S/MIME
  
  Расшифровывает сообщение, зашифрованное S/MIME, содержащееся в файле <strong>$input_filename</strong>, с
  использованием сертификата <strong>$certificate</strong> и соответствующего закрытого ключа <strong>$private_key</strong>.

<comment>Param:</comment>
  <info>string</info>                                                     <strong>$input_filename</strong>   
  <info>string</info>                                                     <strong>$output_filename</strong>  Расшифрованное
                                                                               сообщение будет
                                                                               записано в файл
                                                                               <strong>$output_filename</strong>.
  <info>OpenSSLCertificate|string</info>                                  <strong>$certificate</strong>      
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string|null</info>  <strong>$private_key</strong>      

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkcs7_encrypt
type: function
doc:
<comment>Description:</comment>
  Шифрует сообщение S/MIME
  
  <strong>openssl_pkcs7_encrypt()</strong> читает сообщение из файла <strong>$input_filename</strong>, шифрует его с помощью
  40-битного RC2 шифра таким образом, что расшифровать его могут только получатели, указанными в
  <strong>$certificate</strong>.

<comment>Param:</comment>
  <info>string</info>                           <strong>$input_filename</strong>   
  <info>string</info>                           <strong>$output_filename</strong>  
  <info>OpenSSLCertificate|array|string</info>  <strong>$certificate</strong>      Массив, либо единичный сертификат X.509.
  <info>array|null</info>                       <strong>$headers</strong>          <strong>$headers</strong> задаётся массивом заголовков, которые
                                                     будут добавлены в начало сообщения перед
                                                     шифрованием.
                                                     
                                                     <strong>$headers</strong> может быть как ассоциативным массивом,
                                                     где в качестве ключей используются имена
                                                     заголовков, либо индексированным массивом,
                                                     содержащим полные строки заголовков.
  <info>int</info>                              <strong>$flags</strong>            <strong>$flags</strong> используется для настройки процесса
                                                     шифрования. Смотрите Константы PKCS7.
  <info>int</info>                              <strong>$cipher_algo</strong>      Одна из констант шифров.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkcs7_read
type: function
doc:
<comment>Description:</comment>
  Экспортировать файл PKCS7 в массив сертификатов PEM
  
  К настоящему времени эта функция ещё не была документирована; для ознакомления доступен только
  список аргументов.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>          Строка данных, которые вы хотите проанализировать (формат p7b).
  <info>array</info>   <strong>$certificates</strong>  Массив сертификатов PEM из входных данных p7b.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_csr_sign()</strong>


id: openssl_pkcs7_sign
type: function
doc:
<comment>Description:</comment>
  Подписать сообщение S/MIME
  
  <strong>openssl_pkcs7_sign()</strong> берет содержимое файла <strong>$input_filename</strong> и подписывает его с использованием
  сертификата <strong>$certificate</strong> и закрытого ключа <strong>$private_key</strong>.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$input_filename</strong>                   Файл,
                                                                                          который
                                                                                          нужно
                                                                                          подписать.
  <info>string</info>                                                <strong>$output_filename</strong>                  Файл, в
                                                                                          который
                                                                                          будет
                                                                                          записана
                                                                                          цифровая
                                                                                          подпись.
  <info>OpenSSLCertificate|string</info>                             <strong>$certificate</strong>                      Сертификат
                                                                                          X.509,
                                                                                          который
                                                                                          будет
                                                                                          использован
                                                                                          для
                                                                                          подписи
                                                                                          <strong>$input_filename</strong>.
                                                                                          Смотрите
                                                                                          параметры
                                                                                          ключа/сертификата.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>                      
                                                                                          <strong>$private_key</strong>
                                                                                          задаётся
                                                                                          секретным
                                                                                          ключом,
                                                                                          соответствующим
                                                                                          сертификату
                                                                                          (<strong>$certificate</strong>).
                                                                                          Смотрите
                                                                                          параметры
                                                                                          открытого/секретного
                                                                                          ключа.
  <info>array|null</info>                                            <strong>$headers</strong>                          <strong>$headers</strong>
                                                                                          задаётся
                                                                                          массивом
                                                                                          заголовков,
                                                                                          которые
                                                                                          будут
                                                                                          добавлены
                                                                                          в начало
                                                                                          данных
                                                                                          после
                                                                                          подписания.
                                                                                          (смотрите
                                                                                          <strong>openssl_pkcs7_encrypt()</strong>
                                                                                          для
                                                                                          получения
                                                                                          дополнительной
                                                                                          информации
                                                                                          о формате
                                                                                          этого
                                                                                          параметра).
  <info>int</info>                                                   <strong>$flags</strong>                            <strong>$flags</strong>
                                                                                          используется
                                                                                          для
                                                                                          настройки
                                                                                          вывода.
                                                                                          Смотрите
                                                                                          константы
                                                                                          PKCS7.
  <info>string|null</info>                                           <strong>$untrusted_certificates_filename</strong>  
                                                                                          <strong>$untrusted_certificates_filename</strong>
                                                                                          может
                                                                                          содержать
                                                                                          имя файла,
                                                                                          в котором
                                                                                          хранятся
                                                                                          дополнительные
                                                                                          сертификаты
                                                                                          для
                                                                                          добавления
                                                                                          их к
                                                                                          подписи,
                                                                                          например
                                                                                          для
                                                                                          облегчения
                                                                                          верификации
                                                                                          подписи
                                                                                          разными
                                                                                          пользователями.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkcs7_verify
type: function
doc:
<comment>Description:</comment>
  Проверить подпись сообщения S/MIME
  
  <strong>openssl_pkcs7_verify()</strong> читает S/MIME сообщение из файла и проверяет его подпись.

<comment>Param:</comment>
  <info>string</info>       <strong>$input_filename</strong>                   Путь к файлу с сообщением.
  <info>int</info>          <strong>$flags</strong>                            <strong>$flags</strong> можно использовать для модификации процесса
                                                 проверки. Более подробно смотрите константы PKCS7.
  <info>string|null</info>  <strong>$signers_certificates_filename</strong>    Если задан параметр <strong>$signers_certificates_filename</strong>,
                                                 то в нем должна быть строка с именем файла, в
                                                 который будут сохранены сертификаты, использованные
                                                 при подписании, в формате PEM.
  <info>array</info>        <strong>$ca_info</strong>                          Если задан параметр <strong>$ca_info</strong>, то в нем должна
                                                 содержаться информация о доверенных сертификатах
                                                 CA, которые необходимо использовать в процессе
                                                 проверки. Более подробно читайте на странице
                                                 проверки сертификатов.
  <info>string|null</info>  <strong>$untrusted_certificates_filename</strong>  Если задан параметр
                                                 <strong>$untrusted_certificates_filename</strong>, в нем должно
                                                 содержаться имя файла, содержащего набор
                                                 недоверенных сертификатов CA.
  <info>string|null</info>  <strong>$content</strong>                          В параметре <strong>$content</strong> можно указать имя файла, в
                                                 который будут записаны верифицированные данные без
                                                 информации о подписи.
  <info>string|null</info>  <strong>$output_filename</strong>                  

<comment>Return:</comment>
  <info>bool|int</info>  Возвращает <info>true</info>, если проверка успешна, <info>false</info>, если нет и -1 в случае возникновения
            ошибки.


id: openssl_pkey_derive
type: function
doc:
<comment>Description:</comment>
  Вычисляет общий секрет для открытого значения удалённого и локального ключа DH или ECDH
  
  <strong>openssl_pkey_derive()</strong> принимает набор из <strong>$public_key</strong> и <strong>$private_key</strong> и порождает общий секрет для
  ключей DH или EC.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$public_key</strong>   Открытый ключ для вывода.
                                                                      Список допустимых значений
                                                                      смотрите в разделе Параметры
                                                                      ключа/сертификата.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>  Закрытый ключ для вывода.
                                                                      Список допустимых значений
                                                                      смотрите в разделе Параметры
                                                                      ключа/сертификата.
  <info>int</info>                                                   <strong>$key_length</strong>   Устанавливает желаемую длину
                                                                      производимого секрета, если
                                                                      значение не равно нулю.

<comment>Return:</comment>
  <info>string|false</info>  Произведённый секрет в случае успешного выполнения или <info>false</info> в случае возникновения
                ошибки.


id: openssl_pkey_export
type: function
doc:
<comment>Description:</comment>
  Получает строку с ключом в формате PEM
  
  <strong>openssl_pkey_export()</strong> экспортирует <strong>$key</strong> в виде строки в формате PEM и сохраняет его в <strong>$output</strong>
  (передаётся по ссылке).
  
  Для корректной работы этой функции должен существовать правильный openssl.cnf. Для более подробной
  информации смотрите замечания под разделом установки.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$key</strong>         
  <info>string</info>                                                <strong>$output</strong>      
  <info>string|null</info>                                           <strong>$passphrase</strong>  Ключ опционально защищается
                                                                     паролем <strong>$passphrase</strong>.
  <info>array|null</info>                                            <strong>$options</strong>     <strong>$options</strong> можно использовать для
                                                                     тонкой настройки процесса
                                                                     экспорта путём указания, либо
                                                                     переопределения опций
                                                                     конфигурационного файла
                                                                     openssl. Смотрите описание
                                                                     <strong>openssl_csr_new()</strong> для подробной
                                                                     информации о <strong>$options</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkey_export_to_file
type: function
doc:
<comment>Description:</comment>
  Записывает в файл ключ в формате PEM
  
  <strong>openssl_pkey_export_to_file()</strong> записывает <strong>$key</strong> в формате PEM в файл <strong>$output_filename</strong>.
  
  Для корректной работы этой функции должен существовать правильный openssl.cnf. Для более подробной
  информации смотрите замечания под разделом установки.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$key</strong>              
  <info>string</info>                                                <strong>$output_filename</strong>  Путь до файла.
  <info>string|null</info>                                           <strong>$passphrase</strong>       Ключ опционально
                                                                          защищается паролем
                                                                          <strong>$passphrase</strong>.
  <info>array|null</info>                                            <strong>$options</strong>          <strong>$options</strong> можно
                                                                          использовать для тонкой
                                                                          настройки процесса
                                                                          экспорта путём указания,
                                                                          либо переопределения опций
                                                                          конфигурационного файла
                                                                          openssl. Смотрите
                                                                          <strong>openssl_csr_new()</strong> для
                                                                          подробной информации о
                                                                          <strong>$options</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_pkey_free
type: function
doc:
<comment>Description:</comment>
  Освобождает ресурс закрытого ключа
  
  Использование функции больше не имеет смысла. До PHP 8.0.0 она использовалась для закрытия
  ресурса.
  
  Функция высвобождает ресурс закрытого ключа, созданный <strong>openssl_pkey_new()</strong>.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey</info>  <strong>$key</strong>  Ресурс, содержащий ключ.

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.


id: openssl_pkey_get_details
type: function
doc:
<comment>Description:</comment>
  Получает массив с детальной информацией о ключе
  
  Эта функция возвращает массив с детальной информацией о ключе.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey</info>  <strong>$key</strong>  Ресурс, содержащий ключ.

<comment>Return:</comment>
  <info>array|false</info>  Возвращает массив с детальной информацией о ключе, либо <info>false</info>. Массив содержит
               следующие индексы: <return>bits</return> (количество бит), <return>key</return> (строковое представление открытого
               ключа) и <return>type</return> (тип ключа, одна из констант: <info>OPENSSL_KEYTYPE_RSA</info>, <info>OPENSSL_KEYTYPE_DSA</info>,
               <info>OPENSSL_KEYTYPE_DH</info>, <info>OPENSSL_KEYTYPE_EC</info> или -1, если неизвестно).
               
               В зависимости от типа используемого ключа, могут быть возвращены дополнительные
               данные. Обратите внимание, что некоторых элементов может и не быть.
               
               Для <info>OPENSSL_KEYTYPE_RSA</info> возвращается элемент с индексом <return>"rsa"</return>, содержащий данные
               ключа.
               
               Для <info>OPENSSL_KEYTYPE_DSA</info> возвращается элемент с индексом <return>"dsa"</return>, содержащий данные
               ключа.
               
               Для <info>OPENSSL_KEYTYPE_DH</info> возвращается элемент с индексом <return>"dh"</return>, содержащий данные ключа.
               
               <info>OPENSSL_KEYTYPE_EC</info> возвращается элемент с индексом <return>"ec"</return>, содержащий данные ключа.


id: openssl_pkey_get_private
type: function
doc:
<comment>Description:</comment>
  Получить закрытый ключ
  
  <strong>openssl_pkey_get_private()</strong> разбирает <strong>$private_key</strong> и подготавливает его к использованию в других
  функциях.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>  <strong>$private_key</strong> может быть задан
                                                                      следующим образом: строка вида
                                                                      file://path/to/file.pem. Файл
                                                                      должен содержать кодированный
                                                                      в PEM сертификат/закрытый ключ
                                                                      (может содержать и то и
                                                                      другое). Секретный ключ в
                                                                      формате PEM.
                                                                      
                                                                      строка вида
                                                                      file://path/to/file.pem. Файл
                                                                      должен содержать кодированный
                                                                      в PEM сертификат/закрытый ключ
                                                                      (может содержать и то и
                                                                      другое).
                                                                      
                                                                      Секретный ключ в формате PEM.
  <info>string|null</info>                                           <strong>$passphrase</strong>   Если ключ защищён паролем, то
                                                                      его надо указать в параметре
                                                                      <strong>$passphrase</strong>.

<comment>Return:</comment>
  <info>OpenSSLAsymmetricKey|false</info>  Возвращает экземпляр <class>OpenSSLAsymmetricKey</class> или <info>false</info> в случае
                              возникновения ошибки.


id: openssl_pkey_get_public
type: function
doc:
<comment>Description:</comment>
  Извлекает открытый ключ из сертификата и подготавливает его к использованию
  
  <strong>openssl_pkey_get_public()</strong> извлекает открытый ключ из <strong>$public_key</strong> и подготавливает его к
  использованию в других функциях.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$public_key</strong>  <strong>$public_key</strong> может быть одним
                                                                     из: экземпляр
                                                                     <class>OpenSSLAsymmetricKey</class>строка вида
                                                                     file://path/to/file.pem. Файл
                                                                     должен содержать кодированный в
                                                                     PEM сертификат/публичный ключ
                                                                     (может содержать и то и
                                                                     другое). Открытый ключ в
                                                                     формате PEM.
                                                                     
                                                                     экземпляр <class>OpenSSLAsymmetricKey</class>
                                                                     
                                                                     строка вида
                                                                     file://path/to/file.pem. Файл
                                                                     должен содержать кодированный в
                                                                     PEM сертификат/публичный ключ
                                                                     (может содержать и то и
                                                                     другое).
                                                                     
                                                                     Открытый ключ в формате PEM.

<comment>Return:</comment>
  <info>OpenSSLAsymmetricKey|false</info>  Возвращает экземпляр <class>OpenSSLAsymmetricKey</class> или <info>false</info> в случае
                              возникновения ошибки.


id: openssl_pkey_new
type: function
doc:
<comment>Description:</comment>
  Генерирует новый закрытый ключ
  
  <strong>openssl_pkey_new()</strong> создаёт новый закрытый ключ. Как получить открытую часть ключа показано в
  примере ниже.
  
  Для корректной работы этой функции должен существовать правильный openssl.cnf. Для более подробной
  информации смотрите замечания под разделом установки.

<comment>Param:</comment>
  <info>array|null</info>  <strong>$options</strong>  Вы можете настроить параметры генерации ключа (например указать число бит) с
                        помощью <strong>$options</strong>. Смотрите описание функции <strong>openssl_csr_new()</strong> для детальной
                        информации о <strong>$options</strong>.

<comment>Return:</comment>
  <info>OpenSSLAsymmetricKey|false</info>  Возвращает экземпляр <class>OpenSSLAsymmetricKey</class>, либо <info>false</info> в случае
                              возникновения ошибки.


id: openssl_private_decrypt
type: function
doc:
<comment>Description:</comment>
  Расшифровывает данные с помощью закрытого ключа
  
  <strong>openssl_private_decrypt()</strong> расшифровывает данные <strong>$data</strong>, которые ранее были зашифрованы с помощью
  <strong>openssl_public_encrypt()</strong> и сохраняет результат в <strong>$decrypted_data</strong>.
  
  Вы можете использовать это функцию, например, для расшифровки данных, которые должны быть доступны
  только вам и никому более.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$data</strong>            
  <info>string</info>                                                <strong>$decrypted_data</strong>  
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>     <strong>$private_key</strong> должен быть
                                                                         секретным ключом,
                                                                         соответствующим тому, чем
                                                                         мы шифровали данные.
  <info>int</info>                                                   <strong>$padding</strong>         <strong>$padding</strong> может принимать
                                                                         одно из следующих значений:
                                                                         <info>OPENSSL_PKCS1_PADDING</info>,
                                                                         <info>OPENSSL_SSLV23_PADDING</info>,
                                                                         <info>OPENSSL_PKCS1_OAEP_PADDING</info>,
                                                                         <info>OPENSSL_NO_PADDING</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_public_encrypt()</strong>
   * <strong>openssl_public_decrypt()</strong>


id: openssl_private_encrypt
type: function
doc:
<comment>Description:</comment>
  Шифрует данные секретным ключом
  
  <strong>openssl_private_encrypt()</strong> шифрует <strong>$data</strong> с помощью секретного ключа <strong>$private_key</strong> и сохраняет
  результат в <strong>$encrypted_data</strong>. Потом данные можно расшифровать с помощью <strong>openssl_public_decrypt()</strong>.
  
  Эта функция используется, например, для подписи данных. Чтобы была уверенность в том, кто именно
  отправил сообщение.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$data</strong>            
  <info>string</info>                                                <strong>$encrypted_data</strong>  
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>     
  <info>int</info>                                                   <strong>$padding</strong>         <strong>$padding</strong> может быть одной
                                                                         из констант:
                                                                         <info>OPENSSL_PKCS1_PADDING</info>,
                                                                         <info>OPENSSL_NO_PADDING</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_public_encrypt()</strong>
   * <strong>openssl_public_decrypt()</strong>


id: openssl_public_decrypt
type: function
doc:
<comment>Description:</comment>
  Расшифровка данных с помощью открытого ключа
  
  <strong>openssl_public_decrypt()</strong> расшифровывает данные <strong>$data</strong>, которые ранее были зашифрованы с помощью
  <strong>openssl_private_encrypt()</strong> и сохраняет результат в <strong>$decrypted_data</strong>.
  
  Вы можете использовать эту функцию, например, чтобы проверить, было ли сообщение написано
  владельцем закрытого ключа.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$data</strong>            
  <info>string</info>                                                <strong>$decrypted_data</strong>  
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$public_key</strong>      <strong>$public_key</strong> должен
                                                                         содержать соответствующий
                                                                         открытый ключ.
  <info>int</info>                                                   <strong>$padding</strong>         <strong>$padding</strong> может быть одной
                                                                         из констант:
                                                                         <info>OPENSSL_PKCS1_PADDING</info>,
                                                                         <info>OPENSSL_NO_PADDING</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_private_encrypt()</strong>
   * <strong>openssl_private_decrypt()</strong>


id: openssl_public_encrypt
type: function
doc:
<comment>Description:</comment>
  Шифрование данных открытым ключом
  
  <strong>openssl_public_encrypt()</strong> шифрует <strong>$data</strong> открытым ключом <strong>$public_key</strong> и сохраняет в <strong>$encrypted_data</strong>.
  Впоследствии расшифровать их можно функцией <strong>openssl_private_decrypt()</strong>.
  
  Эта функция используется, например, для отправки сообщений, которые сможет прочитать только
  владелец закрытого ключа и никто больше. Также её можно использовать для шифрования информации в
  базе данных.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$data</strong>            
  <info>string</info>                                                <strong>$encrypted_data</strong>  Будет содержать результат
                                                                         шифрования.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$public_key</strong>      Открытый ключ.
  <info>int</info>                                                   <strong>$padding</strong>         <strong>$padding</strong> может быть одной
                                                                         из констант:
                                                                         <info>OPENSSL_PKCS1_PADDING</info>,
                                                                         <info>OPENSSL_SSLV23_PADDING</info>,
                                                                         <info>OPENSSL_PKCS1_OAEP_PADDING</info>,
                                                                         <info>OPENSSL_NO_PADDING</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_private_encrypt()</strong>
   * <strong>openssl_private_decrypt()</strong>


id: openssl_random_pseudo_bytes
type: function
doc:
<comment>Description:</comment>
  Генерирует псевдослучайную последовательность байт
  
  Генерирует строку псевдослучайных байт длиной <strong>$length</strong>.
  
  Также, если задать необязательный параметр <strong>$strong_result</strong>, который передаётся по ссылке, то в него
  запишется <info>true</info> или <info>false</info>, в зависимости от того, был ли использован криптографически сильный
  алгоритм.

<comment>Param:</comment>
  <info>int</info>   <strong>$length</strong>         Длина генерируемой строки. Должна быть целым положительным числом, меньшим
                        или равным <return>2147483647</return>. При использовании, PHP попытается привести этот
                        параметр к ненулевому целому числу.
  <info>bool</info>  <strong>$strong_result</strong>  Если задано, то в переданную переменную будет записано <info>true</info> или <info>false</info>, в
                        зависимости от того, был ли использован криптографически сильный алгоритм.

<comment>Return:</comment>
  <info>string</info>  Возвращает строку случайных байт.

<comment>See Also:</comment>
   * <strong>random_bytes()</strong>
   * <strong>bin2hex()</strong>
   * <strong>crypt()</strong>
   * <strong>random_int()</strong>


id: openssl_seal
type: function
doc:
<comment>Description:</comment>
  Запечатать (зашифровать) данные
  
  <strong>openssl_seal()</strong> запечатывает (шифрует) <strong>$data</strong>, используя метод <strong>$cipher_algo</strong> со сгенерированным
  случайно секретным ключом. Ключ будет зашифрован каждым открытым ключом, указанном в массиве
  <strong>$public_key</strong>, и каждый зашифрованный ключ будет помещён в <strong>$encrypted_keys</strong>. То есть вы можете
  разослать запечатанные данные сразу нескольким получателям. Каждый получатель должен получить как
  запечатанные данные, так и зашифрованный соответствующим открытым ключом ключ для их открытия.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>            Запечатываемые данные.
  <info>string</info>  <strong>$sealed_data</strong>     Запечатанные данные.
  <info>array</info>   <strong>$encrypted_keys</strong>  Массив зашифрованных ключей.
  <info>array</info>   <strong>$public_key</strong>      Массив экземпляров <class>OpenSSLAsymmetricKey</class>, содержащих открытые ключи.
  <info>string</info>  <strong>$cipher_algo</strong>     Метод шифрования.  Значение по умолчанию (<return>'RC4'</return>) считается небезопасным.
                           Настоятельно рекомендуется явно указывать метод безопасного шифрования.
                           
                           Значение по умолчанию (<return>'RC4'</return>) считается небезопасным. Настоятельно
                           рекомендуется явно указывать метод безопасного шифрования.
  <info>string</info>  <strong>$iv</strong>              Инициализирующий вектор.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает длину запечатанных данных или <info>false</info>. В случае успешного выполнения в
             <strong>$sealed_data</strong> будут содержаться запечатанные данные, а в <strong>$encrypted_keys</strong> зашифрованные
             ключи.

<comment>See Also:</comment>
   * <strong>openssl_open()</strong>


id: openssl_sign
type: function
doc:
<comment>Description:</comment>
  Генерация подписи
  
  <strong>openssl_sign()</strong> вычисляет подпись данных <strong>$data</strong> путём генерации криптографического цифрового слепка
  с использованием секретного ключа <strong>$private_key</strong>. Обратите внимание, что сами данные не шифруются.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$data</strong>         Строка данных, для которых вы
                                                                      хотите получить отпечаток
  <info>string</info>                                                <strong>$signature</strong>    Если функция отработает
                                                                      успешно, то подпись будет
                                                                      помещена в переменную,
                                                                      заданную в <strong>$signature</strong>.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>  Идентификатор ключа, типа
                                                                      <class>OpenSSLAsymmetricKey</class>,
                                                                      полученный из
                                                                      <strong>openssl_get_privatekey()</strong>
                                                                      
                                                                      Строка, представляющая собой
                                                                      ключ в формате PEM.
  <info>string|int</info>                                            <strong>$algorithm</strong>    Целое число, определяющее
                                                                      алгоритм. Смотрите алгоритмы
                                                                      подписи.
                                                                      
                                                                      Строка, возвращённая
                                                                      <strong>openssl_get_md_methods()</strong>.
                                                                      Например,
                                                                      "sha256WithRSAEncryption" или
                                                                      "sha384".

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_verify()</strong>


id: openssl_spki_export
type: function
doc:
<comment>Description:</comment>
  Экспорт открытого ключа в формате PEM из подписанного открытого ключа с вызовом
  
  Экспортирует открытый ключ в формате PEM из подписанного открытого ключа с вызовом

<comment>Param:</comment>
  <info>string</info>  <strong>$spki</strong>  Корректный открытый ключ с вызовом.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает открытый ключ в формате PEM или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_spki_new()</strong>
   * <strong>openssl_spki_verify()</strong>
   * <strong>openssl_spki_export_challenge()</strong>
   * <strong>openssl_get_md_methods()</strong>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_csr_sign()</strong>


id: openssl_spki_export_challenge
type: function
doc:
<comment>Description:</comment>
  Экспорт вызова, связанного с подписанным ключом и вызовом
  
  Экспорт вызова из подписанного открытого ключа и вызова.

<comment>Param:</comment>
  <info>string</info>  <strong>$spki</strong>  Корректный подписанный открытый ключ с вызовом

<comment>Return:</comment>
  <info>string|false</info>  Возвращает строку вызова или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_spki_new()</strong>
   * <strong>openssl_spki_verify()</strong>
   * <strong>openssl_spki_export()</strong>
   * <strong>openssl_get_md_methods()</strong>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_csr_sign()</strong>


id: openssl_spki_new
type: function
doc:
<comment>Description:</comment>
  Создание нового подписанного открытого ключа с вызовом
  
  Создаёт новый подписанный открытый ключ с вызовом, используя указанный алгоритм хеширования.

<comment>Param:</comment>
  <info>OpenSSLAsymmetricKey</info>  <strong>$private_key</strong>  <strong>$private_key</strong> задаётся секретным ключом, созданным ранее
                                      функцией <strong>openssl_pkey_new()</strong> (или полученный другим образом).
                                      Соответствующая открытая часть ключа будет использована для
                                      подписи CSR.
  <info>string</info>                <strong>$challenge</strong>    Вызов, связанный с SPKAC
  <info>int</info>                   <strong>$digest_algo</strong>  Алгоритм хеширования. Смотрите openssl_get_md_method().

<comment>Return:</comment>
  <info>string|false</info>  Возвращает подписанный открытый ключ со строкой вызова или <info>false</info> в случае
                возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_spki_verify()</strong>
   * <strong>openssl_spki_export_challenge()</strong>
   * <strong>openssl_spki_export()</strong>
   * <strong>openssl_get_md_methods()</strong>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_csr_sign()</strong>


id: openssl_spki_verify
type: function
doc:
<comment>Description:</comment>
  Проверяет подписанный открытый ключ и вызов
  
  Проверяет подписанный открытый ключ и вызов

<comment>Param:</comment>
  <info>string</info>  <strong>$spki</strong>  Корректный подписанный открытый ключ и вызов

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_spki_new()</strong>
   * <strong>openssl_spki_export_challenge()</strong>
   * <strong>openssl_spki_export()</strong>
   * <strong>openssl_get_md_methods()</strong>
   * <strong>openssl_csr_new()</strong>
   * <strong>openssl_csr_sign()</strong>


id: openssl_verify
type: function
doc:
<comment>Description:</comment>
  Сверка сигнатуры
  
  <strong>openssl_verify()</strong> проверяет, что подпись <strong>$signature</strong> корректна для данных <strong>$data</strong> и открытого ключа
  <strong>$public_key</strong>. Открытый ключ должен соответствовать закрытому ключу, с помощью которого
  генерировалась подпись.

<comment>Param:</comment>
  <info>string</info>                                                <strong>$data</strong>        Проверяемые данные
  <info>string</info>                                                <strong>$signature</strong>   Необработанная бинарная строка,
                                                                     созданная функцией
                                                                     <strong>openssl_sign()</strong> или её аналогом
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$public_key</strong>  Переменная типа
                                                                     <class>OpenSSLAsymmetricKey</class>,
                                                                     содержащая ключ, подготовленный
                                                                     <strong>openssl_get_publickey()</strong>
                                                                     
                                                                     Строка с ключом в формате PEM.
                                                                     Примерно такого вида <return>-----BEGIN
                                                                     PUBLIC KEY----- MIIBCgK...</return>.
  <info>string|int</info>                                            <strong>$algorithm</strong>   Целое число, соответствующее
                                                                     одному из алгоритмов подписи.
                                                                     
                                                                     Строка, возвращённая
                                                                     <strong>openssl_get_md_methods()</strong>,
                                                                     например
                                                                     "sha1WithRSAEncryption" или
                                                                     "sha512".

<comment>Return:</comment>
  <info>int|false</info>  Возвращает 1, если подпись корректная, 0, если нет и -1 или <info>false</info> в случае
             возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_sign()</strong>


id: openssl_x509_check_private_key
type: function
doc:
<comment>Description:</comment>
  Проверить, относится ли секретный ключ к сертификату
  
  Проверяет, что заданный <strong>$private_key</strong> является секретным ключом, соответствующим сертификату
  <strong>$certificate</strong>.
  
  Функция не проверяет, является ли <strong>$private_key</strong> секретным ключом или нет. Он просто сравнивает
  открытые данные (например, экспоненту и модуль ключа RSA) и/или параметры ключа (например,
  параметры EC для EC-ключа) пары ключей.
  
  То есть, если поместить в <strong>$private_key</strong> соответствующий открытый ключ, то функция может вернуть
  <info>true</info>.

<comment>Param:</comment>
  <info>OpenSSLCertificate|string</info>                             <strong>$certificate</strong>  Сертификат.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$private_key</strong>  Ключ.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если <strong>$private_key</strong> является ключом соответствующим сертификату <strong>$certificate</strong>,
        или <info>false</info> в противном случае.


id: openssl_x509_checkpurpose
type: function
doc:
<comment>Description:</comment>
  Проверяет, можно ли использовать сертификат для конкретных задач
  
  <strong>openssl_x509_checkpurpose()</strong> проверяет сертификат, чтобы узнать, может ли он использоваться с
  заданной целью <strong>$purpose</strong>.

<comment>Param:</comment>
  <info>OpenSSLCertificate|string</info>  <strong>$certificate</strong>                  Сертификат.
  <info>int</info>                        <strong>$purpose</strong>                      Цели
                                                           <strong>openssl_x509_checkpurpose()</strong>КонстантаОписаниеX509_PURPOSE_SSL_CLIENTМожно
                                                           ли использовать сертификат для SSL
                                                           соединения на стороне
                                                           клиента?X509_PURPOSE_SSL_SERVERМожно ли
                                                           использовать сертификат для SSL
                                                           соединения на стороне
                                                           сервера?X509_PURPOSE_NS_SSL_SERVERМожно
                                                           ли использовать для сервера Netscape
                                                           SSL?X509_PURPOSE_SMIME_SIGNМожно ли
                                                           подписывать S/MIME
                                                           email?X509_PURPOSE_SMIME_ENCRYPTМожно ли
                                                           шифровать S/MIME
                                                           email?X509_PURPOSE_CRL_SIGNМожно ли им
                                                           подписывать список отзыва сертификатов
                                                           (CRL)?X509_PURPOSE_ANYМожно ли
                                                           использовать для любых задач? Эти опции
                                                           не являются бинарной маской - можно
                                                           использовать только одно значение за раз!
  <info>array</info>                      <strong>$ca_info</strong>                      <strong>$ca_info</strong> должен содержать массив
                                                           доверенных CA файлов/директорий, как
                                                           описано на странице проверки
                                                           сертификатов.
  <info>string|null</info>                <strong>$untrusted_certificates_file</strong>  Если задано, то должно содержать путь до
                                                           PEM-файла, содержащего сертификаты,
                                                           которые могут быть использованы для
                                                           проверки сертификата, но не являющиеся
                                                           при этом доверенными.

<comment>Return:</comment>
  <info>bool|int</info>  Возвращает <info>true</info>, если сертификат можно использовать по указанному назначению, <info>false</info> -
            если нельзя и -1 в случае возникновения ошибки.


id: openssl_x509_export
type: function
doc:
<comment>Description:</comment>
  Экспортирует сертификат в строку
  
  <strong>openssl_x509_export()</strong> сохраняет сертификат <strong>$certificate</strong> в виде PEM строки в <strong>$output</strong>.

<comment>Param:</comment>
  <info></info>        <strong>$x509</strong>     Для списка корректных значений смотрите Параметры ключей/сертификатов.
  <info>string</info>  <strong>$output</strong>   В случае успешного выполнения в этой переменной будет PEM-представление
                    сертификата.
  <info>bool</info>    <strong>$no_text</strong>  Необязательный параметр <strong>$notext</strong> влияет на детализацию сообщений вывода; если он
                    установлен в <info>false</info>,
                    то в вывод добавляется дополнительная человекочитаемая информация. Значением по
                    умолчанию
                    <strong>$notext</strong> является <info>true</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_x509_export_to_file
type: function
doc:
<comment>Description:</comment>
  Экспортирует сертификат в файл
  
  <strong>openssl_x509_export_to_file()</strong> сохраняет сертификат <strong>$certificate</strong> в файл <strong>$output_filename</strong> в виде
  строки в формате PEM.

<comment>Param:</comment>
  <info></info>        <strong>$x509</strong>             Для списка корректных значений смотрите Параметры ключей/сертификатов.
  <info>string</info>  <strong>$output_filename</strong>  Путь к файлу.
  <info>bool</info>    <strong>$no_text</strong>          Необязательный параметр <strong>$notext</strong> влияет на детализацию сообщений вывода;
                            если он установлен в <info>false</info>,
                            то в вывод добавляется дополнительная человекочитаемая информация.
                            Значением по умолчанию
                            <strong>$notext</strong> является <info>true</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.


id: openssl_x509_fingerprint
type: function
doc:
<comment>Description:</comment>
  Вычисляет отпечаток или дайджест, заданный сертификатом X.509
  
  <strong>openssl_x509_fingerprint()</strong> возвращает дайджест <strong>$certificate</strong> в виде строки.

<comment>Param:</comment>
  <info></info>        <strong>$x509</strong>         Для списка корректных значений смотрите Параметры ключей/сертификатов.
  <info>string</info>  <strong>$digest_algo</strong>  Метод хеширования. Список доступных методов можно получить с помощью
                        <strong>openssl_get_md_methods()</strong>.
  <info>bool</info>    <strong>$binary</strong>       Если установлено как <info>true</info>, будут возвращены необработанные бинарные данные.
                        Если <info>false</info>, то выводит строку из шестнадцатеричных чисел в нижнем регистре.

<comment>Return:</comment>
  <info>string|false</info>  Возвращает отпечаток сертификата в виде строки шестнадцатеричных чисел. Если <strong>$binary</strong>
                установлен в <info>true</info>, то в виде бинарных данных.
                
                В случае возникновения ошибки возвращает <info>false</info>.


id: openssl_x509_free
type: function
doc:
<comment>Description:</comment>
  Высвобождает ресурс сертификата
  
  Использование функции больше не имеет смысла. До PHP 8.0.0 она использовалась для закрытия
  ресурса.
  
  <strong>openssl_x509_free()</strong> удаляет сертификат с идентификатором <strong>$certificate</strong> из памяти.

<comment>Param:</comment>
  <info>OpenSSLCertificate</info>  <strong>$certificate</strong>  

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.


id: openssl_x509_parse
type: function
doc:
<comment>Description:</comment>
  Разобрать сертификат X509 и получить массив с данными о нем
  
  <strong>openssl_x509_parse()</strong> возвращает информацию сертификате с идентификатором <strong>$certificate</strong>, включая
  такие поля, как имя субъекта, имя издателя, назначение, даты начала и окончания действия и т.д.

<comment>Param:</comment>
  <info>OpenSSLCertificate|string</info>  <strong>$certificate</strong>  Сертификат X509. Список корректных значений смотри в
                                           Параметры Key/Certificate.
  <info>bool</info>                       <strong>$short_names</strong>  <strong>$short_names</strong> определяет, как будут индексироваться данные
                                           в итоговом массиве. Если <strong>$short_names</strong> задать как <info>true</info> (по
                                           умолчанию), то поля будут индексироваться короткими
                                           именами, а не длинными. Например, CN - это короткое имя
                                           для commonName.

<comment>Return:</comment>
  <info>array|false</info>  Структура возвращаемого массива ещё не до конца устоялась, так что пока не
               документируется.


id: openssl_x509_read
type: function
doc:
<comment>Description:</comment>
  Разобрать сертификат X.509 и вернуть для него объект
  
  <strong>openssl_x509_read()</strong> извлекает сертификат из <strong>$certificate</strong> и возвращает объект <class>OpenSSLCertificate</class>
  для него.

<comment>Param:</comment>
  <info>OpenSSLCertificate|string</info>  <strong>$certificate</strong>  Сертификат X509. Список корректных значений смотрите на
                                           странице Параметры ключей и сертификатов.

<comment>Return:</comment>
  <info>OpenSSLCertificate|false</info>  Возвращает объект <class>OpenSSLCertificate</class> в случае успешного выполнения или
                            <info>false</info> в случае возникновения ошибки.


id: openssl_x509_verify
type: function
doc:
<comment>Description:</comment>
  Проверка цифровой подписи сертификата x509 с помощью публичного ключа
  
  <strong>openssl_x509_verify()</strong> проверяет, что сертификат <strong>$certificate</strong> был подписан приватным ключом,
  соответствующим публичному ключу <strong>$public_key</strong>.

<comment>Param:</comment>
  <info></info>                                                      <strong>$x509</strong>        Для списка корректных значений
                                                                     смотрите Параметры
                                                                     ключей/сертификатов.
  <info>OpenSSLAsymmetricKey|OpenSSLCertificate|array|string</info>  <strong>$public_key</strong>  <class>OpenSSLAsymmetricKey</class> - ключ,
                                                                     возвращённый функцией
                                                                     <strong>openssl_get_publickey()</strong>
                                                                     
                                                                     <info>string</info> - ключ в формате PEM,
                                                                     такого вида: <return>-----BEGIN PUBLIC
                                                                     KEY----- MIIBCgK...</return>.

<comment>Return:</comment>
  <info>int</info>  Возвращает 1, если подпись корректна, 0, если нет, и -1 в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>openssl_verify()</strong>
   * <strong>openssl_get_publickey()</strong>


id: ord
type: function
doc:
<comment>Description:</comment>
  Конвертирует первый байт строки в число от 0 до 255
  
  Интерпретирует бинарное значение первого байта строки <strong>$character</strong> как беззнаковое целое.
  
  Если строка создана в однобайтовой кодировке, такой как ASCII, ISO-8859 или Windows 1252,
  результат функции будет эквивалентен позиции символа в соответствующей таблице кодировки. В любом
  случае, эта функция ничего не знает про кодировки и не сможет вернуть кодовую точку первого
  символа строки, закодированной в многобайтовой кодировке, такой как UTF-8 или UTF-16.
  
  Эта функция дополняет функцию <strong>chr()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$character</strong>  Символ.

<comment>Return:</comment>
  <info>int</info>  Целое число от 0 до 255.

<comment>See Also:</comment>
   * <strong>chr()</strong>
   * Таблица ASCII-кодов
   * <strong>mb_ord()</strong>
   * <strong>IntlChar::ord()</strong>


id: output_add_rewrite_var
type: function
doc:
<comment>Description:</comment>
  Добавить значения в обработчик URL
  
  Эта функция добавляет ещё одну пару имя/значение к механизму перезаписи URL. Имя и значение будут
  добавлены к URL (в качестве GET-параметров) и формам (как скрытые поля ввода) так же, как и
  идентификатор сессии, если включена прозрачная перезапись ссылок с использованием
  session.use_trans_sid.
  
  Поведение этой функции контролируется параметрами php.ini url_rewriter.tags и url_rewriter.hosts.
  
  Обратите внимание, что функция может быть успешно вызвана не более одного раза за запрос.
  
  Вызов этой функции неявно запустит буферизацию вывода, если она ещё не активна.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>   Имя параметра.
  <info>string</info>  <strong>$value</strong>  Значение параметра.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>output_reset_rewrite_vars()</strong>
   * <strong>ob_flush()</strong>
   * <strong>ob_list_handlers()</strong>
   * url_rewriter.tags
   * url_rewriter.hosts
   * session.trans_sid_tags
   * session.trans_sid_hosts


id: output_reset_rewrite_vars
type: function
doc:
<comment>Description:</comment>
  Сбросить значения обработчика URL
  
  Эта функция сбрасывает обработчик URL и удаляет все значения, установленные функцией
  <strong>output_add_rewrite_var()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>output_add_rewrite_var()</strong>
   * <strong>ob_flush()</strong>
   * <strong>ob_list_handlers()</strong>
   * url_rewriter.tags
   * url_rewriter.hosts
   * session.trans_sid_tags
   * session.trans_sid_hosts


id: pack
type: function
doc:
<comment>Description:</comment>
  Упаковать данные в бинарную строку
  
  Упаковывает заданные аргументы в бинарную строку в соответствии с форматом в параметре <strong>$format</strong>.
  
  Идея этой функции была заимствована из Perl и все коды форматирования работают так же. Однако,
  есть некоторые отсутствующие коды форматирования, такие как код формата Perl "u".
  
  Необходимо иметь в виду, что отличие между знаковыми и беззнаковыми значениями влияет только на
  функцию <strong>unpack()</strong>, тогда как функция <strong>pack()</strong> даёт одинаковый результат для знаковых и беззнаковых
  кодов формата.

<comment>Param:</comment>
  <info>string</info>  <strong>$format</strong>  Параметр <strong>$format</strong> задаётся в виде строки и состоит из кодов формата и
                   опционального аргумента повторения. Аргумент может быть целочисленным, либо <return>*</return> для
                   повторения до конца введённых данных. Для a, A, h, H число повторений определяет
                   то, сколько символов взято от одного аргумента данных, для @ - это абсолютная
                   позиция для размещения следующих данных, для всего остального число повторений
                   определяет как много аргументов данных было обработано и упаковано в
                   результирующую бинарную строку.
                   
                   Работающие на данный момент форматы: Символы форматов функции
                   <strong>pack()</strong>КодОписаниеaСтрока (string) с NUL-заполнениемAСтрока (string) со
                   SPACE-заполнениемhHex-строка (Hex string), с нижнего разрядаHHex-строка (Hex
                   string), с верхнего разрядаcзнаковый символ (char)Cбеззнаковый символ
                   (char)sзнаковый short (всегда 16 бит, машинный байтовый порядок)Sбеззнаковый
                   short (всегда 16 бит, машинный байтовый порядок)nбеззнаковый short (всегда 16
                   бит, порядок big endian)vбеззнаковый short (всегда 16 бит, порядок little
                   endian)iзнаковый integer (машинно-зависимый размер и порядок)Iбеззнаковый integer
                   (машинно-зависимый размер и порядок)lзнаковый long (всегда 32 бит, машинный
                   порядок)Lбеззнаковый long (всегда 32 бит, машинный порядок)Nбеззнаковый long
                   (всегда 32 бит, порядок big endian)Vбеззнаковый long (всегда 32 бит, порядок
                   little endian)qsigned long long (всегда 64 bit, машинный порядок)Qбеззнаковый
                   long long (всегда 64 bit, машинный порядок)Jбеззнаковый long long (всегда 64 bit,
                   порядок big endian)Pбеззнаковый long long (всегда 64 bit, порядок little
                   endian)ffloat (машинно-зависимые размер и представление)gfloat (машинно-зависимые
                   размер, порядок байт little endian)Gfloat (машинно-зависимые размер, порядок байт
                   big endian)ddouble (машинно-зависимые размер и представление)edouble
                   (машинно-зависимые размер, порядок байт little endian)Edouble (машинно-зависимые
                   размер, порядок байт big endian)xбайт NULXРезервирование одного байтаZСтрока
                   (string) с NUL-заполнением@NUL-заполнение до абсолютной позиции
  <info>mixed</info>   <strong>$values</strong>  

<comment>Return:</comment>
  <info>string</info>  Возвращает бинарную строку, содержащую данные.

<comment>See Also:</comment>
   * <strong>unpack()</strong>


id: parallel\Channel::__construct
type: function
doc:
<comment>Description:</comment>
  Конструктор класса Channel
  
  Создаёт анонимный небуферизованный канал
  
  Создаёт анонимный буферизованный канал с заданной ёмкостью.

<comment>Param:</comment>
  <info>int</info>  <strong>$capacity</strong>  Может быть <info>Channel::Infinite</info> или положительным целым числом.


id: parallel\Channel::close
type: function
doc:
<comment>Description:</comment>
  Закрытие
  
  Закрывает канал.

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Channel::make
type: function
doc:
<comment>Description:</comment>
  Доступ
  
  Создаёт небуферизованный канал с заданным именем
  
  Создаёт буферизованный канал с заданным именем и ёмкостью.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>      Имя канала.
  <info>int</info>     <strong>$capacity</strong>  Может быть <info>Channel::Infinite</info> или положительным целым числом

<comment>Return:</comment>
  <info>Channel</info>  


id: parallel\Channel::open
type: function
doc:
<comment>Description:</comment>
  Доступ
  
  Открывает канал с заданным именем

<comment>Return:</comment>
  <info>Channel</info>  


id: parallel\Channel::recv
type: function
doc:
<comment>Description:</comment>
  Совместное использование
  
  Получает значение из этого канала

<comment>Return:</comment>
  <info>mixed</info>  


id: parallel\Channel::send
type: function
doc:
<comment>Description:</comment>
  Совместное использование
  
  Отправляет заданное значение в канал

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events::addChannel
type: function
doc:
<comment>Description:</comment>
  Цели
  
  Следит за событиями в заданном <strong>$channel</strong>

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events::addFuture
type: function
doc:
<comment>Description:</comment>
  Цели
  
  Следит за событиями в заданном <strong>$future</strong>

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events::poll
type: function
doc:
<comment>Description:</comment>
  Опрос
  
  Опрашивает для следующего события

<comment>Return:</comment>
  <info>parallel\Events\Event|null</info>  Если целей не осталось, возвращается <info>null</info>.
                              
                              Если это будет неблокирующий цикл и произойдёт блокировка, будет
                              возвращено значение <info>null</info>.
                              
                              В противном случае <class>parallel\Events\Event</class> возвращает описание события.


id: parallel\Events::remove
type: function
doc:
<comment>Description:</comment>
  Цели
  
  Удаляет заданный <strong>$target</strong>

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events::setBlocking
type: function
doc:
<comment>Description:</comment>
  Поведение
  
  По умолчанию, когда опрашиваются события, блокировка будет происходить (на уровне PHP) до тех пор,
  пока не будет возвращено первое событие: установка режима блокировки в <info>false</info> приведёт к тому, что
  опрос вернёт управление, если первая опрошенная цель не готова.
  
  Отличается от установки времени ожидания 0 с помощью parallel\Events::setTimeout, поскольку время
  ожидания 0, хотя и разрешено, выбросит исключение, которое может быть чрезвычайно медленным или
  расточительным, если действительно необходимо неблокирующее поведение.
  
  Неблокирующий цикл влияет на возвращаемое значение parallel\Events::poll, так что оно может быть
  <info>null</info> до того, как все события будут обработаны.
  
  Устанавливает режим блокировки

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events::setInput
type: function
doc:
<comment>Description:</comment>
  Вход
  
  Устанавливает <strong>$input</strong> для этого цикла событий

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events::setTimeout
type: function
doc:
<comment>Description:</comment>
  Поведение
  
  По умолчанию при опросе событий происходит блокировка (на уровне PHP) до тех пор, пока не будет
  возвращено первое событие: установка времени ожидания приводит к выбрасыванию исключения при
  превышении времени ожидания.
  
  Отличается от установки режима блокировки в <info>false</info> с помощью parallel\Events::setBlocking, который
  не выбрасывает исключение.
  
  Устанавливает время ожидания в микросекундах

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events\Input::add
type: function
doc:
<comment>Description:</comment>
  Входы
  
  Устанавливает вход для заданной цели

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events\Input::clear
type: function
doc:
<comment>Description:</comment>
  Входы
  
  Удаляет ввод для всех целей

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Events\Input::remove
type: function
doc:
<comment>Description:</comment>
  Входы
  
  Удаляет вход для данной цели

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Future::cancel
type: function
doc:
<comment>Description:</comment>
  Прекращение
  
  Пытается прервать задание.
  
  Если задача запущена, она будет прервана.
  
  Выполняющиеся внутренние вызовы функций не могут быть прерваны.

<comment>Return:</comment>
  <info>bool</info>  


id: parallel\Future::cancelled
type: function
doc:
<comment>Description:</comment>
  Определение состояния
  
  Указывает, была ли задача отменена.

<comment>Return:</comment>
  <info>bool</info>  


id: parallel\Future::done
type: function
doc:
<comment>Description:</comment>
  Определение состояния
  
  Указывает, выполнена ли задача

<comment>Return:</comment>
  <info>bool</info>  


id: parallel\Future::value
type: function
doc:
<comment>Description:</comment>
  Разрешение
  
  Возвращает (и при необходимости дожидается) возврата из задания.

<comment>Return:</comment>
  <info>mixed</info>  


id: parallel\Runtime::__construct
type: function
doc:
<comment>Description:</comment>
  Конструктор класса Runtime
  
  Создаёт новую среду выполнения без начальной загрузки.
  
  Создаёт новую среду выполнения с начальной загрузкой.

<comment>Param:</comment>
  <info>string</info>  <strong>$bootstrap</strong>  Расположение файла начальной загрузки, обычно это автозагрузчик.


id: parallel\Runtime::close
type: function
doc:
<comment>Description:</comment>
  Изящное соединение во время выполнения
  
  Запрашивает завершение работы среды выполнения.
  
  Запланированные к выполнению задачи будут выполнены до завершения работы.

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Runtime::kill
type: function
doc:
<comment>Description:</comment>
  Соединение во время выполнения
  
  Пытается принудительно завершить работу среды выполнения.
  
  Запланированные к выполнению задачи не будут выполнены, текущая задача будет прервана.
  
  Выполняющиеся внутренние вызовы функций не могут быть прерваны.

<comment>Return:</comment>
  <info>void</info>  


id: parallel\Runtime::run
type: function
doc:
<comment>Description:</comment>
  Выполнение
  
  Планирует параллельное выполнение <strong>$task</strong>.
  
  Планирует параллельное выполнение <strong>$task</strong>, передавая <strong>$argv</strong> во время выполнения.

<comment>Param:</comment>
  <info>Closure</info>  <strong>$task</strong>  Замыкание (<class>Closure</class>) со специфическими характеристиками.
  <info>array</info>    <strong>$argv</strong>  Массив (<info>array</info>) аргументов с конкретными характеристиками, которые будут переданы
                  <strong>$task</strong> во время выполнения.

<comment>Return:</comment>
  <info>Future|null</info>  Нельзя игнорировать возвращаемый <info>parallel\Future</info>, если задача содержит оператор
               return или throw.


id: parallel\Sync::__construct
type: function
doc:
<comment>Description:</comment>
  Конструктор класса
  
  Создаёт новый объект синхронизации без значения.
  
  Создаёт новый объект синхронизации, содержащий заданное скалярное значение.


id: parallel\Sync::__invoke
type: function
doc:
<comment>Description:</comment>
  Синхронизация
  
  Должен быть включён исключительно в критический код.


id: parallel\Sync::get
type: function
doc:
<comment>Description:</comment>
  Доступ
  
  Автоматически возвращает значение объектов синхронизации.

<comment>Return:</comment>
  <info>scalar</info>  


id: parallel\Sync::notify
type: function
doc:
<comment>Description:</comment>
  Синхронизация
  
  Уведомляет один (по умолчанию) или все потоки, ожидающие объекта синхронизации.


id: parallel\Sync::set
type: function
doc:
<comment>Description:</comment>
  Доступ
  
  Атомарно устанавливает значение объекта синхронизации.


id: parallel\Sync::wait
type: function
doc:
<comment>Description:</comment>
  Синхронизация
  
  Ожидает уведомления об этом объекте синхронизации.


id: parallel\bootstrap
type: function
doc:
<comment>Description:</comment>
  Начальная загрузка
  
  Должен использовать предоставленный <strong>$file</strong> для начальной загрузки всех сред выполнения, созданных
  для автоматического планирования с помощью <strong>parallel\run()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$file</strong>  Путь к файлу для начальной загрузки всех сред выполнения.

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.

<comment>See Also:</comment>
   * 


id: parallel\run
type: function
doc:
<comment>Description:</comment>
  Выполнение
  
  Планирует <strong>$task</strong> для выполнения в parallel.
  
  Планирует <strong>$task</strong> для выполнения в parallel, передавая <strong>$argv</strong> во время выполнения.

<comment>Param:</comment>
  <info>Closure</info>  <strong>$task</strong>  Замыкание (<class>Closure</class>) со специфическими характеристиками.
  <info>array</info>    <strong>$argv</strong>  Массив (<info>array</info>) аргументов с конкретными характеристиками, которые будут переданы
                  <strong>$task</strong> во время выполнения.

<comment>Return:</comment>
  <info>Future|null</info>  Нельзя игнорировать возвращаемый <info>parallel\Future</info>, если задача содержит оператор
               return или throw.

<comment>See Also:</comment>
   * 


id: parse_ini_file
type: function
doc:
<comment>Description:</comment>
  Обрабатывает конфигурационный файл
  
  <strong>parse_ini_file()</strong> загружает ini-файл, указанный в аргументе <strong>$filename</strong>, и возвращает его настройки в
  виде ассоциативного массива.
  
  Структура ini-файла похожа на структуру php.ini.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>          Имя обрабатываемого ini-файла. Если используется относительный путь, он
                             оценивается относительно текущего рабочего каталога, а затем
                             include_path.
  <info>bool</info>    <strong>$process_sections</strong>  Установив параметр <strong>$process_sections</strong> в <info>true</info>, вы получаете многомерный
                             массив, который включает как название отдельных настроек, так и секции.
                             По умолчанию <strong>$process_sections</strong> равен <info>false</info>
  <info>int</info>     <strong>$scanner_mode</strong>      Может принимать следующие значения: <info>INI_SCANNER_NORMAL</info> (по умолчанию)
                             или <info>INI_SCANNER_RAW</info>. Если указано значение <info>INI_SCANNER_RAW</info>, то значения
                             опций не будут обрабатываться.
                             
                             С версии PHP 5.6.1 также можно задать <info>INI_SCANNER_TYPED</info>.
                             В этом режиме типы boolean, null и integer будут, по возможности,
                             сохраняться.
                             Строковые значения <return>"true"</return>, <return>"on"</return> и <return>"yes"</return>
                             будут преобразованы в <info>true</info>. <return>"false"</return>, <return>"off"</return>, <return>"no"</return>
                             и <return>"none"</return> в <info>false</info>. <return>"null"</return> преобразуется в <info>null</info>.
                             Кроме этого, все числовые строки будут, по возможности, преобразованы к
                             целым числам.

<comment>Return:</comment>
  <info>array|false</info>  В случае успешного выполнения, настройки возвращаются в виде ассоциативного массива
               (<info>array</info>). В случае возникновения ошибки возвращается <info>false</info>.

<comment>See Also:</comment>
   * <strong>parse_ini_string()</strong>


id: parse_ini_string
type: function
doc:
<comment>Description:</comment>
  Разбирает строку конфигурации
  
  <strong>parse_ini_string()</strong> возвращает настройки из строки <strong>$ini_string</strong> в виде ассоциативного массива.
  
  Структура INI-строки такая же, как и в php.ini.

<comment>Param:</comment>
  <info>string</info>  <strong>$ini_string</strong>        Содержимое разбираемого INI-файла.
  <info>bool</info>    <strong>$process_sections</strong>  Установив в параметр <strong>$process_sections</strong> <info>true</info>, можно получить многомерный
                             массив, который включает названия секций и настроек. По умолчанию
                             <strong>$process_sections</strong> равен <info>false</info>
  <info>int</info>     <strong>$scanner_mode</strong>      Может принимать следующие значения: <info>INI_SCANNER_NORMAL</info> (по умолчанию)
                             или <info>INI_SCANNER_RAW</info>. Если указано значение <info>INI_SCANNER_RAW</info>, то значения
                             опций не будут обрабатываться.
                             
                             С версии PHP 5.6.1 также можно задать <info>INI_SCANNER_TYPED</info>.
                             В этом режиме типы boolean, null и integer будут, по возможности,
                             сохраняться.
                             Строковые значения <return>"true"</return>, <return>"on"</return> и <return>"yes"</return>
                             будут преобразованы в <info>true</info>. <return>"false"</return>, <return>"off"</return>, <return>"no"</return>
                             и <return>"none"</return> в <info>false</info>. <return>"null"</return> преобразуется в <info>null</info>.
                             Кроме этого, все числовые строки будут, по возможности, преобразованы к
                             целым числам.

<comment>Return:</comment>
  <info>array|false</info>  В случае успешного выполнения, настройки возвращаются в виде ассоциативного массива
               (<info>array</info>). В случае возникновения ошибки, возвращается <info>false</info>.

<comment>See Also:</comment>
   * <strong>parse_ini_file()</strong>


id: parse_str
type: function
doc:
<comment>Description:</comment>
  Разбирает строку в переменные
  
  Разбирает строку <strong>$string</strong>, которая должна иметь формат строки запроса URL и присваивает значения
  переменным в текущем контексте (или заносит в массив, если задан параметр <strong>$result</strong>).

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  Входная строка.
  <info>array</info>   <strong>$result</strong>  Если указан второй параметр <strong>$result</strong>, то вместо присвоения переменных в текущем
                   контексте они будут сохранены в этом параметре в качестве элементов массива.
                   
                   Использовать эту функцию без параметра <strong>$result</strong> крайне НЕ РЕКОМЕНДУЕТСЯ. Подобное
                   использование объявлено УСТАРЕВШИМ с PHP 7.2. Начиная с PHP 8.0.0, параметр
                   <strong>$result</strong> является обязательным.

<comment>Return:</comment>
  <info>void</info>  Функция не возвращает значения после выполнения.

<comment>See Also:</comment>
   * <strong>parse_url()</strong>
   * <strong>pathinfo()</strong>
   * <strong>http_build_query()</strong>
   * <strong>urldecode()</strong>


id: parse_url
type: function
doc:
<comment>Description:</comment>
  Разбирает URL и возвращает его компоненты
  
  Эта функция разбирает URL и возвращает ассоциативный массив, содержащий все компоненты URL,
  которые в нём присутствуют. Элементы массива не будут декодированы как URL.
  
  Эта функция не предназначена для проверки на корректность данного URL, она только разбивает его на
  нижеперечисленные части. Частичные и недопустимые URL также принимаются, <strong> parse_url()</strong> пытается
  сделать всё возможное, чтобы разобрать их корректно.

<comment>Param:</comment>
  <info>string</info>  <strong>$url</strong>        URL для разбора.
  <info>int</info>     <strong>$component</strong>  Укажите одну из констант <info>PHP_URL_SCHEME</info>, <info>PHP_URL_HOST</info>, <info>PHP_URL_PORT</info>,
                      <info>PHP_URL_USER</info>, <info>PHP_URL_PASS</info>, <info>PHP_URL_PATH</info>, <info>PHP_URL_QUERY</info> или <info>PHP_URL_FRAGMENT</info>,
                      чтобы получить только конкретный компонент URL в виде строки (<info>string</info>).
                      Исключением является указание <info>PHP_URL_PORT</info>, в этом случае возвращаемое
                      значение будет типа <info>int</info>.

<comment>Return:</comment>
  <info>int|string|array|null|false</info>  При разборе значительно некорректных URL-адресов <strong>parse_url()</strong> может
                               вернуть <info>false</info>.
                               
                               Если параметр <strong>$component</strong> будет опущен, функция возвратит
                               ассоциативный массив (<info>array</info>). В массиве будет находиться по крайней
                               мере один элемент. Возможные ключи в этом массиве: scheme - например,
                               http hostportuserpasspathquery - после знака вопроса <return>?</return> fragment -
                               после знака решётки <return>#</return>
                               
                               scheme - например, http
                               
                               host
                               
                               port
                               
                               user
                               
                               pass
                               
                               path
                               
                               query - после знака вопроса <return>?</return>
                               
                               fragment - после знака решётки <return>#</return>
                               
                               Если параметр <strong>$component</strong> определён, функция <strong>parse_url()</strong> вернёт строку
                               (<info>string</info>) (или число (<info>int</info>), в случае <info>PHP_URL_PORT</info>) вместо массива
                               (<info>array</info>). Если запрошенный компонент не существует в данном URL, будет
                               возвращён <info>null</info>. Начиная с PHP 8.0.0, <strong>parse_url()</strong> различает
                               отсутствующие и пустые запросы и фрагменты:
                               
                               
                               
                               Ранее во всех случаях запрос и фрагмент были <info>null</info>.
                               
                               Обратите внимание, что управляющие символы (смотрите <strong>ctype_cntrl()</strong>) в
                               компонентах заменяются подчёркиванием (<return>_</return>).

<comment>See Also:</comment>
   * <strong>pathinfo()</strong>
   * <strong>parse_str()</strong>
   * <strong>http_build_query()</strong>
   * <strong>dirname()</strong>
   * <strong>basename()</strong>
   * RFC 3986


id: passthru
type: function
doc:
<comment>Description:</comment>
  Выполнить внешнюю программу и отобразить необработанный вывод
  
  Функция <strong>passthru()</strong> похожа на функцию <strong>exec()</strong> в том, что она выполняет команду <strong>$command</strong>. Эта функция
  должна быть использована вместо функции <strong>exec()</strong> или <strong>system()</strong>, когда вывод команды Unix представляет
  собой двоичные данные, которые необходимо передать непосредственно в браузер. Стандартное
  использование этой функции - выполнение таких утилит как pbmplus, которые выводят непосредственно
  поток изображения. Установив Content-type в <return>image/gif</return> и затем вызвав программу pbmplus для вывода
  gif, вы можете создать PHP-скрипты, которые выводят изображения напрямую в браузер.

<comment>Param:</comment>
  <info>string</info>  <strong>$command</strong>      Команда, которая будет выполнена.
  <info>int</info>     <strong>$result_code</strong>  Если присутствует аргумент <strong>$result_code</strong>, то код возврата Unix-команды будет
                        помещён здесь.

<comment>Return:</comment>
  <info>false|null</info>  Возвращает <info>null</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>exec()</strong>
   * <strong>system()</strong>
   * <strong>popen()</strong>
   * <strong>escapeshellcmd()</strong>
   * Оператор исполнения


id: password_algos
type: function
doc:
<comment>Description:</comment>
  Получает доступные идентификаторы алгоритма хеширования пароля
  
  Возвращает полный список всех зарегистрированных идентификаторов алгоритма хеширования паролей в
  виде массива (<info>array</info>) строк (<info>string</info>)

<comment>Return:</comment>
  <info>array</info>  Возвращает доступные идентификаторы алгоритма хеширования пароля.


id: password_get_info
type: function
doc:
<comment>Description:</comment>
  Возвращает информацию о заданном хеше
  
  Если передан корректный хеш, созданный поддерживаемым <strong>password_hash()</strong> алгоритмом, то эта функция
  вернёт информацию об этом хеше.

<comment>Param:</comment>
  <info>string</info>  <strong>$hash</strong>  Хеш, созданный функцией <strong>password_hash()</strong>.

<comment>Return:</comment>
  <info>array</info>  Возвращает ассоциативный массив с тремя элементами: <return>algo</return>, содержащий одну из констант
         алгоритмов паролей <return>algoName</return>, содержащий имя алгоритма в человекочитаемом виде <return>options</return>,
         включающий опции, переданные при вызове <strong>password_hash()</strong>
         
         <return>algo</return>, содержащий одну из констант алгоритмов паролей
         
         <return>algoName</return>, содержащий имя алгоритма в человекочитаемом виде
         
         <return>options</return>, включающий опции, переданные при вызове <strong>password_hash()</strong>


id: password_hash
type: function
doc:
<comment>Description:</comment>
  Создаёт хеш пароля
  
  Функция <strong>password_hash()</strong> создаёт хеш пароля, используя сильный необратимый алгоритм хеширования.
  
  Поддерживаются следующие алгоритмы:
  
  <info>PASSWORD_DEFAULT</info> — будет выбран алгоритм bcrypt (по умолчанию с PHP 5.5.0). Обратите внимание,
  алгоритм может измениться на более сильный, когда такой добавится в PHP. При изменении алгоритма и
  длина результата также может измениться. Поэтому длину поля для хранения в базе данных лучше
  устанавливать более 60 символов (255 символов будет хорошим значением). <info>PASSWORD_BCRYPT</info> — будет
  выбран алгоритм <info>CRYPT_BLOWFISH</info>. Генерирует стандартный хеш с идентификатором "$2y$", совместимый с
  тем, который генерирует функция <strong>crypt()</strong>. В результате будет сгенерирована строка длиной 60
  символов или <info>false</info> в случае возникновения ошибки. <info>PASSWORD_ARGON2I</info> — будет выбран алгоритм
  хеширования Argon2i. Этот алгоритм будет доступен, только если PHP собран с поддержкой Argon2.
  <info>PASSWORD_ARGON2ID</info> — будет выбран алгоритм хеширования Argon2id. Этот алгоритм будет доступен,
  только если PHP собран с поддержкой Argon2.
  
  <info>PASSWORD_DEFAULT</info> — будет выбран алгоритм bcrypt (по умолчанию с PHP 5.5.0). Обратите внимание,
  алгоритм может измениться на более сильный, когда такой добавится в PHP. При изменении алгоритма и
  длина результата также может измениться. Поэтому длину поля для хранения в базе данных лучше
  устанавливать более 60 символов (255 символов будет хорошим значением).
  
  <info>PASSWORD_BCRYPT</info> — будет выбран алгоритм <info>CRYPT_BLOWFISH</info>. Генерирует стандартный хеш с
  идентификатором "$2y$", совместимый с тем, который генерирует функция <strong>crypt()</strong>. В результате будет
  сгенерирована строка длиной 60 символов или <info>false</info> в случае возникновения ошибки.
  
  <info>PASSWORD_ARGON2I</info> — будет выбран алгоритм хеширования Argon2i. Этот алгоритм будет доступен, только
  если PHP собран с поддержкой Argon2.
  
  <info>PASSWORD_ARGON2ID</info> — будет выбран алгоритм хеширования Argon2id. Этот алгоритм будет доступен,
  только если PHP собран с поддержкой Argon2.
  
  Поддерживаемые опции для <info>PASSWORD_BCRYPT</info>:
  
  <return>salt</return> (<info>string</info>) — для самостоятельного задания соли для хеширования. Обратите внимание, что это
  приведёт к переопределению и предотвратит автоматическое создание соли.  Если не задано, то
  функция <strong>password_hash()</strong> будет генерировать случайную соль для каждого хешируемого пароля. Это
  предпочтительный режим работы.  Эта опция объявлена устаревшей. Рекомендуется использовать
  автоматически генерируемую соль. Начиная с PHP 8.0.0 явно заданная соль игнорируется. <return>cost</return> (<info>int</info>) —
  задаёт алгоритмическую сложность. Пример с этой опцией можно посмотреть на странице, посвящённой
  функции <strong>crypt()</strong>.  Если не задано, то будет выбрано значение по умолчанию: <return>10</return>. Это хорошая базовая
  стоимость, но можно увеличить её, если позволяет производительность оборудования.
  
  <return>salt</return> (<info>string</info>) — для самостоятельного задания соли для хеширования. Обратите внимание, что это
  приведёт к переопределению и предотвратит автоматическое создание соли.
  
  Если не задано, то функция <strong>password_hash()</strong> будет генерировать случайную соль для каждого
  хешируемого пароля. Это предпочтительный режим работы.
  
  Эта опция объявлена устаревшей. Рекомендуется использовать автоматически генерируемую соль.
  Начиная с PHP 8.0.0 явно заданная соль игнорируется.
  
  <return>cost</return> (<info>int</info>) — задаёт алгоритмическую сложность. Пример с этой опцией можно посмотреть на странице,
  посвящённой функции <strong>crypt()</strong>.
  
  Если не задано, то будет выбрано значение по умолчанию: <return>10</return>. Это хорошая базовая стоимость, но
  можно увеличить её, если позволяет производительность оборудования.
  
  Поддерживаемые опции для <info>PASSWORD_ARGON2I</info> и <info>PASSWORD_ARGON2ID</info>:
  
  <return>memory_cost</return> (<info>int</info>) — максимальный размер памяти (в килобайтах), которая будет использована для
  вычисления хеша Argon2. По умолчанию будет выбрано значение константы
  <info>PASSWORD_ARGON2_DEFAULT_MEMORY_COST</info>. <return>time_cost</return> (<info>int</info>) — максимально возможное время, которое можно
  потратить на вычисление хеша Argon2. По умолчанию будет выбрано значение константы
  <info>PASSWORD_ARGON2_DEFAULT_TIME_COST</info>. <return>threads</return> (<info>int</info>) — количество потоков, которые можно задействовать
  для вычисления хеша Argon2. По умолчанию будет выбрано значение константы
  <info>PASSWORD_ARGON2_DEFAULT_THREADS</info>.  Доступно только тогда, когда в PHP доступен модуль libargon2, но
  не при реализации libsodium.
  
  <return>memory_cost</return> (<info>int</info>) — максимальный размер памяти (в килобайтах), которая будет использована для
  вычисления хеша Argon2. По умолчанию будет выбрано значение константы
  <info>PASSWORD_ARGON2_DEFAULT_MEMORY_COST</info>.
  
  <return>time_cost</return> (<info>int</info>) — максимально возможное время, которое можно потратить на вычисление хеша Argon2.
  По умолчанию будет выбрано значение константы <info>PASSWORD_ARGON2_DEFAULT_TIME_COST</info>.
  
  <return>threads</return> (<info>int</info>) — количество потоков, которые можно задействовать для вычисления хеша Argon2. По
  умолчанию будет выбрано значение константы <info>PASSWORD_ARGON2_DEFAULT_THREADS</info>.
  
  Доступно только тогда, когда в PHP доступен модуль libargon2, но не при реализации libsodium.

<comment>Param:</comment>
  <info>string</info>           <strong>$password</strong>  Пользовательский пароль.
                              
                              Использование алгоритма <info>PASSWORD_BCRYPT</info> приведёт к обрезанию поля
                              <strong>$password</strong> до максимальной длины — 72 байта.
  <info>string|int|null</info>  <strong>$algo</strong>      Константа, обозначающая используемый алгоритм хеширования пароля.
  <info>array</info>            <strong>$options</strong>   Ассоциативный массив с опциями. За документацией по поддерживаемым
                              опциям для каждого алгоритма обратитесь к разделу Константы алгоритмов
                              хеширования паролей.
                              
                              Если не задано, то будет использована стандартная стоимость, и соль
                              будет сгенерирована автоматически.

<comment>Return:</comment>
  <info>string</info>  Возвращает хешированный пароль.
          
          Выбранный алгоритм, стоимость и соль будут возвращены как часть хеша. Таким образом,
          информация, необходимая для проверки хеша, будет в него включена. Это позволит функции
          <strong>password_verify()</strong> проверять хеш без отдельного хранения информации о соли и алгоритме.

<comment>See Also:</comment>
   * <strong>password_verify()</strong>
   * <strong>password_needs_rehash()</strong>
   * <strong>crypt()</strong>
   * <strong>sodium_crypto_pwhash_str()</strong>


id: password_needs_rehash
type: function
doc:
<comment>Description:</comment>
  Проверяет, что указанный хеш соответствует заданным опциям
  
  Проверяет, что указанный хеш соответствует заданным опциям и заданному алгоритму. Если нет, то
  можно сделать вывод о том, что хеш надо пересоздать.

<comment>Param:</comment>
  <info>string</info>           <strong>$hash</strong>     Хеш, созданный функцией <strong>password_hash()</strong>.
  <info>string|int|null</info>  <strong>$algo</strong>     Константа, обозначающая используемый алгоритм хеширования пароля.
  <info>array</info>            <strong>$options</strong>  Ассоциативный массив с опциями. За документацией по поддерживаемым
                             опциям для каждого алгоритма обратитесь к разделу Константы алгоритмов
                             хеширования паролей.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если пароль должен быть перехеширован с использованием алгоритма <strong>$algo</strong> и
        опций <strong>$options</strong>, или <info>false</info>, если нет.


id: password_verify
type: function
doc:
<comment>Description:</comment>
  Проверяет, соответствует ли пароль хешу
  
  Проверяет, соответствует ли пароль хешу. Функция <strong>password_verify()</strong> совместима с <strong>crypt()</strong>.
  Следовательно, хеши паролей, созданные <strong>crypt()</strong>, могут быть использованы в <strong>password_verify()</strong>.
  
  Обратите внимание, что  <strong>password_hash()</strong> возвращает алгоритм, стоимость и соль как части хеша.
  Таким образом, вся необходимая для проверки информация включена в него. Это позволяет производить
  проверку без необходимости хранить все эти данные раздельно.
  
  Эта функция безопасна для атак по времени.

<comment>Param:</comment>
  <info>string</info>  <strong>$password</strong>  Пользовательский пароль.
  <info>string</info>  <strong>$hash</strong>      Хеш, созданный функцией <strong>password_hash()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> или <info>false</info>, в зависимости от результатов проверки.

<comment>See Also:</comment>
   * <strong>password_needs_rehash()</strong>
   * <strong>password_hash()</strong>
   * пользовательская реализация
   * <strong>sodium_crypto_pwhash_str_verify()</strong>


id: pathinfo
type: function
doc:
<comment>Description:</comment>
  Возвращает информацию о пути к файлу
  
  <strong>pathinfo()</strong> возвращает информацию о <strong>$path</strong> в виде ассоциативного массива или строки, в зависимости
  от <strong>$flags</strong>.
  
  Подробнее о получении информации о текущем пути, можно почитать в разделе Предопределённые
  зарезервированные переменные.
  
  <strong>pathinfo()</strong> оперирует входной строкой и не знает фактическую файловую систему или компоненты пути,
  такие как "<return>..</return>".
  
  Только в системах Windows символ <return>\</return> будет интерпретироваться как разделитель каталогов. В других
  системах он будет рассматриваться как любой другой символ.
  
  <strong>pathinfo()</strong> учитывает настройки локали, поэтому для корректной обработки пути с многобайтными
  символами должна быть установлена соответствующая локаль с помощью функции <strong>setlocale()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>   Анализируемый путь.
  <info>int</info>     <strong>$flags</strong>  Если указан, то задаёт, какой из элементов пути будет возвращён: <info>PATHINFO_DIRNAME</info>,
                  <info>PATHINFO_BASENAME</info>, <info>PATHINFO_EXTENSION</info> и <info>PATHINFO_FILENAME</info>.
                  
                  Если <strong>$flags</strong> не указан, то возвращаются все доступные элементы.

<comment>Return:</comment>
  <info>array|string</info>  Если параметр <strong>$flags</strong> не передан, то возвращаемый ассоциативный массив (<info>array</info>) будет
                содержать следующие элементы: <return>dirname</return>, <return>basename</return>, <return>extension</return> (если есть) и <return>filename</return>.
                
                Если <strong>$path</strong> содержит больше одного расширения, то <info>PATHINFO_EXTENSION</info> возвращает
                только последний и <info>PATHINFO_FILENAME</info> удаляет только последнее расширение. (смотрите
                пример ниже).
                
                Если <strong>$path</strong> не содержит расширения, то не будет возвращён элемент <return>extension</return> (смотрите
                ниже второй пример).
                
                Если <return>basename</return> параметра <strong>$path</strong> начинается с точки, то все последующие символы
                интерпретируются как расширение файла (<return>extension</return>) и имя файла <return>filename</return> будет пустым
                (смотрите третий пример).
                
                Если указан параметр <strong>$flags</strong>, будет возвращена строка (<info>string</info>), содержащая указанный
                элемент.

<comment>See Also:</comment>
   * <strong>dirname()</strong>
   * <strong>basename()</strong>
   * <strong>parse_url()</strong>
   * <strong>realpath()</strong>


id: pclose
type: function
doc:
<comment>Description:</comment>
  Закрывает файловый указатель процесса
  
  Закрывает файловый указатель на поток, открытый при помощи <strong>popen()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$handle</strong>  Файловый указатель должен быть действующим и должен быть получен успешным
                     вызовом функции <strong>popen()</strong>.

<comment>Return:</comment>
  <info>int</info>  Возвращает статус выхода завершающегося процесса. В случае возникновения ошибки возвращается
       <return>-1</return>.
       
       Если PHP собран с опцией --enable-sigchild, возвращаемое значение этой функции не определено.

<comment>See Also:</comment>
   * <strong>popen()</strong>


id: pcntl_alarm
type: function
doc:
<comment>Description:</comment>
  Задать таймер доставки сигнала SIGALRM
  
  Создаёт таймер, который отправит сигнал <info>SIGALRM</info> процессу через заданное количество секунд. Любой
  вызов функции <strong>pcntl_alarm()</strong> отменит любой ранее заданный таймер.

<comment>Param:</comment>
  <info>int</info>  <strong>$seconds</strong>  Число секунд ожидания. Если в аргумент <strong>$seconds</strong> передан ноль, то новый таймер
                 создан не будет.

<comment>Return:</comment>
  <info>int</info>  Возвращает время в секундах, которое оставалось любому предыдущему таймеру для доставки
       сигнала, или вернёт <return>0</return>, если ранее таймер не был задан.


id: pcntl_async_signals
type: function
doc:
<comment>Description:</comment>
  Включить/отключить асинхронную обработку сигналов, либо получить текущий статус
  
  Если пропущен параметр <strong>$enable</strong>, функция <strong>pcntl_async_signals()</strong> вернёт текущее значение настройки. А
  если задан, то асинхронная обработка будет включена, либо отключена, в зависимости от заданного
  значения.

<comment>Param:</comment>
  <info>bool|null</info>  <strong>$enable</strong>  Включить или отключить асинхронную обработку сигналов.

<comment>Return:</comment>
  <info>bool</info>  Если при использовании значение параметра <strong>$enable</strong> равно <info>null</info>, возвращает включена ли
        асинхронная обработка сигналов. Если при использовании параметр <strong>$enable</strong> не равен <info>null</info>,
        возвращает, была ли включена асинхронная обработка сигналов до вызова функции.

<comment>See Also:</comment>
   * declare


id: pcntl_errno
type: function
doc:
<comment>Description:</comment>
  Псевдоним pcntl_get_last_error
  
  Функция является псевдонимом:  <strong>pcntl_get_last_error()</strong>


id: pcntl_exec
type: function
doc:
<comment>Description:</comment>
  Запустить указанную программу в области текущего процесса
  
  Запускает программу с переданными аргументами.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>      <strong>$path</strong> путь до исполняемой программы или скрипта с корректным указанием пути до
                     интерпретатора в первой строке (например, #!/usr/local/bin/perl). Для получения
                     дополнительной информации обратитесь к системному руководству execve(2).
  <info>array</info>   <strong>$args</strong>      <strong>$args</strong> массив строк аргументов переданных программе
  <info>array</info>   <strong>$env_vars</strong>  <strong>$env_vars</strong> массив строк, которые переданы программе в качестве переменных
                     окружения. Массив формата name =&gt; value, где name - имя переменной окружения
                     и value - значение переменной окружения.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>false</info>.


id: pcntl_fork
type: function
doc:
<comment>Description:</comment>
  Разветвить (fork) текущий запущенный процесс
  
  Функция <strong>pcntl_fork()</strong> создаёт дочерний процесс, который отличается от родительского процесса только
  его PID и PPID. Пожалуйста обратитесь к вашему системному руководству (man) fork(2) для
  ознакомления со спецификой работы fork на вашей системе.

<comment>Return:</comment>
  <info>int</info>  В случае успешного выполнения, PID дочернего процесса будет возвращён в родительском потоке
       (thread) запуска и 0 будет возвращён в дочернем потоке запуска. В случае возникновения
       ошибки, в родительский контекст будет возвращено -1, дочерний процесс создан не будет и PHP
       сгенерирует соответствующую ошибку.

<comment>See Also:</comment>
   * <strong>pcntl_rfork()</strong>
   * <strong>pcntl_waitpid()</strong>
   * <strong>pcntl_signal()</strong>
   * <strong>cli_set_process_title()</strong>


id: pcntl_get_last_error
type: function
doc:
<comment>Description:</comment>
  Получить код последней ошибки, возникшей в pcntl-функции
  
  К настоящему времени эта функция ещё не была документирована; для ознакомления доступен только
  список аргументов.

<comment>Return:</comment>
  <info>int</info>  Возвращает код ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_strerror()</strong>


id: pcntl_getpriority
type: function
doc:
<comment>Description:</comment>
  Получить значение приоритета процесса
  
  <strong>pcntl_getpriority()</strong> получает значение приоритета для процесса, указанного в аргументе <strong>$process_id</strong>.
  Поскольку уровни приоритета процессов отличаются в различных типах операционных систем и версиях
  их ядер, пожалуйста, ознакомьтесь с вашим системным руководством getpriority(2) для получения
  детальной информации о специфике работы функции в вашей системе.

<comment>Param:</comment>
  <info>int|null</info>  <strong>$process_id</strong>  Если не указано, то будет использован идентификатор текущего процесса.
  <info>int</info>       <strong>$mode</strong>        Может принимать значение одной из констант <info>PRIO_PGRP</info>, <info>PRIO_USER</info>,
                         <info>PRIO_PROCESS</info>, <info>PRIO_DARWIN_BG</info> или <info>PRIO_DARWIN_THREAD</info>.

<comment>Return:</comment>
  <info>int|false</info>  <strong>pcntl_getpriority()</strong> возвращает приоритет процесса, или <info>false</info> в случае возникновения
             ошибки. Более низкое числовое значение (в т.ч. отрицательное) означает больший
             приоритет.
             
             Эта функция может возвращать как логическое значение <info>false</info>, так и значение не типа
             boolean, которое приводится к <info>false</info>. За более подробной информацией обратитесь к
             разделу Булев тип. Используйте оператор === для проверки значения, возвращаемого этой
             функцией.

<comment>See Also:</comment>
   * <strong>pcntl_setpriority()</strong>


id: pcntl_rfork
type: function
doc:
<comment>Description:</comment>
  Взаимодействует с ресурсами процесса
  
  Взаимодействует с ресурсами процесса.

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>   Параметр <strong>$flags</strong> определяет, какие ресурсы вызывающего процесса (родительского)
                разделяются новым процессом (дочерним) или инициализируются в значения по умолчанию.
                
                <strong>$flags</strong> является логическим OR (или) некоторого подмножества из: <info>RFPROC</info>: Если
                установлено, создаётся новый процесс; в противном случае изменения затрагивают
                текущий процесс. <info>RFNOWAIT</info>: Если установлено, дочерний процесс будет отделён от
                родительского. При выходе дочерний процесс не будет оставлять статус для родителя,
                чтобы забрать его. <info>RFFDG</info>: Если установлено, копируется таблица дескрипторов файлов
                вызывающей стороны; В противном случае два процесса используют одну таблицу. <info>RFCFDG</info>:
                Если установлено, новый процесс начинается с чистой таблицей дескрипторов файлов.
                Взаимоисключающий флаг с <return>RFFDG</return>. <info>RFLINUXTHPN</info>: Если установлено, ядро будет возвращать
                SIGUSR1 вместо SIGCHILD при выходе из дочернего потока. Предназначен для уведомления
                родительского процесса о выходе из Linux-клона.
  <info>int</info>  <strong>$signal</strong>  Номер сигнала.

<comment>Return:</comment>
  <info>int</info>  В случае успешного выполнения в потоке выполнения родительского процесса возвращается PID
       дочернего процесса, а в потоке выполнения дочернего процесса возвращается <return>0</return>. В случае
       возникновения ошибки в контексте родителя будет возвращено <return>-1</return>, дочерний процесс не будет
       создан и будет выдана ошибка PHP.

<comment>See Also:</comment>
   * <strong>pcntl_fork()</strong>
   * <strong>pcntl_waitpid()</strong>
   * <strong>pcntl_signal()</strong>
   * <strong>cli_set_process_title()</strong>


id: pcntl_setpriority
type: function
doc:
<comment>Description:</comment>
  Изменить приоритет процесса
  
  <strong>pcntl_setpriority()</strong> задаёт приоритет процессу, указанному в аргументе <strong>$process_id</strong>.

<comment>Param:</comment>
  <info>int</info>       <strong>$priority</strong>    Как правило приоритет <strong>$priority</strong> - это значение в интервале от <return>-20</return> до <return>20</return>.
                         Приоритет по умолчанию равен <return>0</return>, при том что более низкое числовое значение
                         означает более высокий приоритет процесса. Поскольку уровни приоритета
                         процессов отличаются в различных типах операционных систем и версиях их
                         ядер, пожалуйста, ознакомьтесь с вашим системным руководством
                         getpriority(2) для получения детальной информации о специфике работы
                         функции в вашей системе.
  <info>int|null</info>  <strong>$process_id</strong>  Если не указано, то будет использован идентификатор текущего процесса.
  <info>int</info>       <strong>$mode</strong>        Может принимать значение одной из констант <info>PRIO_PGRP</info>, <info>PRIO_USER</info>,
                         <info>PRIO_PROCESS</info>, <info>PRIO_DARWIN_BG</info> или <info>PRIO_DARWIN_THREAD</info>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_getpriority()</strong>
   * <strong>pcntl_setpriority()</strong>


id: pcntl_signal
type: function
doc:
<comment>Description:</comment>
  Установка обработчика сигнала
  
  Функция <strong>pcntl_signal()</strong> устанавливает новый обработчик сигнала или заменяет текущий обработчик
  сигнала, указанный в аргументе <strong>$signal</strong>.

<comment>Param:</comment>
  <info>int</info>           <strong>$signal</strong>            Номер сигнала.
  <info>callable|int</info>  <strong>$handler</strong>           Обработчик сигнала. Это может быть или <info>callable</info>, указатель на
                                   функцию, которая будет запущена для обработки сигнала, или
                                   значение одной из глобальных констант: <info>SIG_IGN</info> или <info>SIG_DFL</info>,
                                   которые, соответственно, либо приведут к игнорированию сигнала,
                                   либо восстановлению обработчика по умолчанию.
                                   
                                   Если передан тип <info>callable</info>, он должен иметь следующую сигнатуру:
                                   
                                   <info>void</info>handler<info>int</info><strong>$signo</strong><info>mixed</info><strong>$siginfo</strong><strong>$signal</strong> Номер обрабатываемого
                                   сигнала. <strong>$siginfo</strong> Если операционная система поддерживает
                                   структуры siginfo_t, можно передать массив c информацией о
                                   сигнале соответствующей структуры.
                                   
                                   Номер обрабатываемого сигнала.
                                   
                                   Если операционная система поддерживает структуры siginfo_t, можно
                                   передать массив c информацией о сигнале соответствующей
                                   структуры.
                                   
                                   Обратите внимание, что когда вы задаёте в качестве обработчика
                                   метод объекта, счётчик ссылок на данный объект будет увеличен на
                                   единицу, что сохранит его в памяти до тех пор, пока вы либо не
                                   смените обработчик на что-то другое, либо до тех пор пока скрипт
                                   полностью не завершит свою работу.
  <info>int</info>           <strong>$signal</strong>            Номер обрабатываемого сигнала.
  <info>mixed</info>         <strong>$siginfo</strong>           Если операционная система поддерживает структуры siginfo_t, можно
                                   передать массив c информацией о сигнале соответствующей
                                   структуры.
  <info>bool</info>          <strong>$restart_syscalls</strong>  Определяет, должен ли использоваться перезапуск системного вызова
                                   при поступлении сигнала.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_fork()</strong>
   * <strong>pcntl_waitpid()</strong>


id: pcntl_signal_dispatch
type: function
doc:
<comment>Description:</comment>
  Вызывает обработчики для ожидающих сигналов
  
  Функция <strong>pcntl_signal_dispatch()</strong> вызывает обработчики сигналов, установленные функцией
  <strong>pcntl_signal()</strong>, для каждого ожидающего сигнала.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_signal()</strong>
   * <strong>pcntl_sigprocmask()</strong>
   * <strong>pcntl_sigwaitinfo()</strong>
   * <strong>pcntl_sigtimedwait()</strong>


id: pcntl_signal_get_handler
type: function
doc:
<comment>Description:</comment>
  Получить текущий обработчик указанного сигнала
  
  Функция <strong>pcntl_signal_get_handler()</strong> получит текущий обработчик указанного сигнала <strong>$signal</strong>.

<comment>Param:</comment>
  <info>int</info>  <strong>$signal</strong>  Номер сигнала.

<comment>Return:</comment>
  <info>callable|int</info>  Функция вернёт целочисленное значение, указывающее на константы <info>SIG_DFL</info> или <info>SIG_IGN</info>.
                Если задан пользовательский обработчик, возвращается этот <info>callable</info>. функции.

<comment>See Also:</comment>
   * <strong>pcntl_signal()</strong>


id: pcntl_sigprocmask
type: function
doc:
<comment>Description:</comment>
  Задаёт и извлекает список блокируемых сигналов
  
  Функция <strong>pcntl_sigprocmask()</strong> добавляет, удаляет или задаёт список блокированных процессов в
  зависимости от значения переданного в аргументе <strong>$mode</strong>.

<comment>Param:</comment>
  <info>int</info>    <strong>$mode</strong>         Задаёт поведение функции <strong>pcntl_sigprocmask()</strong>. Возможные значения: <info>SIG_BLOCK</info>:
                       Добавить сигнал к списку уже блокируемых сигналов.<info>SIG_UNBLOCK</info>: Удалить сигнал
                       из списка блокируемых.<info>SIG_SETMASK</info>: Заменить список блокируемых сигналов новым
                       списком.
  <info>array</info>  <strong>$signals</strong>      Список сигналов
  <info>array</info>  <strong>$old_signals</strong>  Функция передаст по ссылке в аргумент <strong>$old_signals</strong> ранее заданный список
                       блокируемых сигналов.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_sigwaitinfo()</strong>
   * <strong>pcntl_sigtimedwait()</strong>


id: pcntl_sigtimedwait
type: function
doc:
<comment>Description:</comment>
  Ожидает сигналы в течение заданного времени
  
  Функция <strong>pcntl_sigtimedwait()</strong> ведёт себя точно так же как и функция <strong>pcntl_sigwaitinfo()</strong> за
  исключением того, что принимает два дополнительных аргумента, <strong>$seconds</strong> и <strong>$nanoseconds</strong>, которые
  устанавливают верхнюю границу времени, которое скрипт может простаивать.

<comment>Param:</comment>
  <info>array</info>  <strong>$signals</strong>      Массив ожидаемых сигналов.
  <info>array</info>  <strong>$info</strong>         <strong>$info</strong> содержит информацию о сигнале. Смотрите функцию <strong>pcntl_sigwaitinfo()</strong>.
  <info>int</info>    <strong>$seconds</strong>      Время ожидания в секундах.
  <info>int</info>    <strong>$nanoseconds</strong>  Время ожидания в наносекундах.

<comment>Return:</comment>
  <info>int|false</info>  В случае успешного выполнения <strong>pcntl_sigtimedwait()</strong> возвращает номер сигнала или <info>false</info> в
             случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_sigprocmask()</strong>
   * <strong>pcntl_sigwaitinfo()</strong>


id: pcntl_sigwaitinfo
type: function
doc:
<comment>Description:</comment>
  Ожидание сигналов
  
  Функция <strong>pcntl_sigwaitinfo()</strong> приостанавливает выполнение вызывающего скрипта до тех пор, пока не
  будет доставлен один из сигналов, указанных в <strong>$signals</strong>. Если один из сигналов уже ожидает
  обработки (например, заблокирован <strong>pcntl_sigprocmask()</strong>),<strong>pcntl_sigwaitinfo()</strong> незамедлительно вернёт
  управление.

<comment>Param:</comment>
  <info>array</info>  <strong>$signals</strong>  Массив ожидаемых сигналов.
  <info>array</info>  <strong>$info</strong>     Аргумент <strong>$info</strong> массив, содержащий информацию о сигнале.
                   
                   Следующие ключи массива (аргумента) применимы для всех сигналов signo: Номер
                   сигналаerrno: Номер ошибкиcode: Код сигнала
                   
                   Следующие элементы массива применимы для сигнала <info>SIGCHLD</info>: status: Статус выхода
                   дочернего процесса или сигнал, заставивший дочерний процесс поменять
                   состояниеutime: Потреблённое пользовательское времяstime: Потреблённое системное
                   времяpid: ID процесса-отправителяuid: ID пользователя владеющего
                   процессом-отправителем
                   
                   Следующие элементы массива применимы для сигналов <info>SIGILL</info>, <info>SIGFPE</info>, <info>SIGSEGV</info> и
                   <info>SIGBUS</info>: addr: Адрес памяти в котором произошёл сбой
                   
                   Следующие элементы массива применимы для сигнала <info>SIGPOLL</info> band: Событие
                   ввода-выводаfd: Номер файлового дескриптора

<comment>Return:</comment>
  <info>int|false</info>  В случае успешного выполнения функция <strong>pcntl_sigwaitinfo()</strong> возвращает номер сигнала или
             <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_sigprocmask()</strong>
   * <strong>pcntl_sigtimedwait()</strong>


id: pcntl_strerror
type: function
doc:
<comment>Description:</comment>
  Получить текст ошибки по её коду
  
  К настоящему времени эта функция ещё не была документирована; для ознакомления доступен только
  список аргументов.

<comment>Param:</comment>
  <info>int</info>  <strong>$error_code</strong>  

<comment>Return:</comment>
  <info>string</info>  Возвращает описание ошибки.

<comment>See Also:</comment>
   * <strong>pcntl_get_last_error()</strong>


id: pcntl_unshare
type: function
doc:
<comment>Description:</comment>
  Разделяет части контекста выполнения процесса
  
  Функция <strong>pcntl_unshare()</strong> позволяет процессу отсоединить части своего контекста выполнения, которые
  в настоящее время используются совместно с другими процессами. Основное использование
  <strong>pcntl_unshare()</strong> заключается в том, чтобы позволить процессу управлять своим общим контекстом
  выполнения без создания нового процесса.

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>  Параметр <strong>$flags</strong> - это битовая маска, определяющая, какие части контекста выполнения
               должны быть неразделёнными. Параметр задаётся путём использования оператора OR вместе
               с нулём или более констант <return>CLONE_*</return>:
               <info>CLONE_NEWNS</info><info>CLONE_NEWIPC</info><info>CLONE_NEWUTS</info><info>CLONE_NEWNET</info><info>CLONE_NEWPID</info><info>CLONE_NEWUSER</info><info>CLONE_NEWCGROUP</info>

<comment>Return:</comment>
  <info>bool</info>  Возвращает <return>0</return> в случае успешного выполнения, <return>-1</return> в противном случае. В случае возникновения
        ошибки устанавливается код ошибки, который можно получить с помощью функции
        <strong>pcntl_get_last_error()</strong>.

<comment>See Also:</comment>
   * Константы PCNTL
   * <strong>pcntl_get_last_error()</strong>


id: pcntl_wait
type: function
doc:
<comment>Description:</comment>
  Ожидает или возвращает статус порождённого дочернего процесса
  
  Функция ожидания приостанавливает выполнение текущего процесса до тех пор, пока дочерний процесс
  не завершится или пока не будет получен сигнал который завершает текущий процесс или вызывает
  функцию обработки сигнала. Если дочерний процесс уже завершился ко времени вызова (так называемые
  "зомби" процессы), функция незамедлительно вернёт управление. Обратитесь к вашей системному
  руководству (man) wait(2) для уточнения специфики работы wait в вашей системе.
  
  Эта функция эквивалентна вызову <strong>pcntl_waitpid()</strong> с аргументом <strong>$process_id</strong> равным <return>-1</return> и без аргумента
  <strong>$flags</strong>.

<comment>Param:</comment>
  <info>int</info>  <strong>$status</strong>  <strong>pcntl_wait()</strong> разместит информацию о статусе по ссылке в аргументе <strong>$status</strong>, который
                может быть передан в следующие функции: <strong>pcntl_wifexited()</strong>, <strong>pcntl_wifstopped()</strong>,
                <strong>pcntl_wifsignaled()</strong>, <strong>pcntl_wexitstatus()</strong>, <strong>pcntl_wtermsig()</strong> и <strong>pcntl_wstopsig()</strong>.
  <info>int</info>  <strong>$flags</strong>   Если системный вызов wait3 (man 2 wait3) доступен в вашей системе (как правило в
                BSD-подобных системах), вы можете задать необязательный аргумент <strong>$flags</strong>. Если этот
                параметр не задан, будет использован стандартный системный вызов wait. Если
                системный вызов wait3 не доступен для вашей системы, передача значения аргумента
                <strong>$flags</strong> не будет иметь значения. Значение аргумента <strong>$flags</strong> - это битовая маска,
                которая может принимать значение ноль или более путём логического объединения
                следующих констант: Возможные значения для <strong>$flags</strong><return>WNOHANG</return> Незамедлительно вернуть
                управление, если ни один из дочерних процессов не завершён <return>WUNTRACED</return> Вернуть
                управление для остановленных дочерних процессов, о статусе которых ещё не сообщено

<comment>Return:</comment>
  <info>int</info>  <strong>pcntl_wait()</strong> возвращает ID завершённого дочернего процесса, -1 в случае возникновения ошибки
       или ноль, если <return>WNOHANG</return> был передан в аргумент <strong>$options</strong> (на системах с доступным системным
       вызовом wait3) и не было доступных дочерних процессов.

<comment>See Also:</comment>
   * <strong>pcntl_fork()</strong>
   * <strong>pcntl_signal()</strong>
   * <strong>pcntl_wifexited()</strong>
   * <strong>pcntl_wifstopped()</strong>
   * <strong>pcntl_wifsignaled()</strong>
   * <strong>pcntl_wexitstatus()</strong>
   * <strong>pcntl_wtermsig()</strong>
   * <strong>pcntl_wstopsig()</strong>
   * <strong>pcntl_waitpid()</strong>


id: pcntl_waitpid
type: function
doc:
<comment>Description:</comment>
  Ожидает или возвращает статус порождённого дочернего процесса
  
  Функция ожидания приостанавливает выполнение текущего процесса до тех пор, пока дочерний процесс,
  указанный в аргументе <strong>$process_id</strong>, не завершится или пока не будет получен сигнал, который
  завершает текущий процесс или вызывает функцию обработки сигнала.
  
  Если дочерний процесс, указанный в аргументе <strong>$process_id</strong>, уже завершился ко времени вызова (так
  называемые "зомби" процессы), функция незамедлительно вернёт управление. Любые системные ресурсы
  используемые дочерним процессом будут освобождены. Обратитесь к вашей системному руководству
  waitpid(2) для уточнения специфики работы waitpid в вашей системе.

<comment>Param:</comment>
  <info>int</info>  <strong>$process_id</strong>  Аргумент <strong>$process_id</strong> может принимать одно из следующих значений: возможные
                    значения аргумента <strong>$process_id</strong><return>\< -1</return> ожидать любой дочерний процесс, у которого
                    значение идентификатор группы процессов (group ID) равно модулю значения
                    аргумента |<strong>$process_id</strong>|. <return>-1</return> ожидать любой дочерний процесс; это такое же
                    поведение, что и у функции wait. <return>0</return> ожидать любой дочерний процесс, идентификатор
                    группы процессов (group ID) которого равен идентификатору текущего процесса.
                    <return>&gt; 0</return> ожидать дочерний процесс ID которого равен <strong>$process_id</strong>.
                    
                    Указание <return>-1</return> в качестве <strong>$process_id</strong> - это аналог функции <strong>pcntl_wait()</strong> (минус
                    <strong>$flags</strong>).
  <info>int</info>  <strong>$status</strong>      <strong>pcntl_waitpid()</strong> разместит информацию о статусе по ссылке в аргументе <strong>$status</strong>,
                    который может быть передан в следующие функции: <strong>pcntl_wifexited()</strong>,
                    <strong>pcntl_wifstopped()</strong>, <strong>pcntl_wifsignaled()</strong>, <strong>pcntl_wexitstatus()</strong>, <strong>pcntl_wtermsig()</strong> и
                    <strong>pcntl_wstopsig()</strong>.
  <info>int</info>  <strong>$flags</strong>       Значение аргумента <strong>$flags</strong> - это битовая маска, которая может принимать значение
                    ноль или более путём логического объединения следующих констант: Возможные
                    значения для <strong>$flags</strong><return>WNOHANG</return> Незамедлительно вернуть управление, если ни один из
                    дочерних процессов не завершён <return>WUNTRACED</return> Вернуть управление для остановленных
                    дочерних процессов, о статусе которых ещё не сообщено

<comment>Return:</comment>
  <info>int</info>  <strong>pcntl_wait()</strong> возвращает ID завершённого дочернего процесса, -1 в случае возникновения ошибке
       или ноль, если <info>WNOHANG</info> был передан в аргумент <strong>$flags</strong> и не было доступных дочерних процессов.

<comment>See Also:</comment>
   * <strong>pcntl_fork()</strong>
   * <strong>pcntl_signal()</strong>
   * <strong>pcntl_wifexited()</strong>
   * <strong>pcntl_wifstopped()</strong>
   * <strong>pcntl_wifsignaled()</strong>
   * <strong>pcntl_wexitstatus()</strong>
   * <strong>pcntl_wtermsig()</strong>
   * <strong>pcntl_wstopsig()</strong>


id: pcntl_wexitstatus
type: function
doc:
<comment>Description:</comment>
  Получить код возврата завершённого дочернего процесса
  
  Возвращает код возврата завершённого дочернего процесса. Функция применима только если функция
  <strong>pcntl_wifexited()</strong> вернула <info>true</info>.

<comment>Param:</comment>
  <info>int</info>  <strong>$status</strong>  Параметр <strong>$status</strong> — это параметр статуса, передаваемый для успешного вызова функции
                <strong>pcntl_waitpid()</strong>.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает код возврата дочернего процесса. Если эта функция не поддерживается ОС,
             возвращается <info>false</info>.

<comment>See Also:</comment>
   * <strong>pcntl_waitpid()</strong>
   * <strong>pcntl_wifexited()</strong>


id: pcntl_wifexited
type: function
doc:
<comment>Description:</comment>
  Проверяет, соответствует ли код завершения процесса нормальному завершению
  
  Проверяет, соответствует ли код завершения процесса нормальному завершению.

<comment>Param:</comment>
  <info>int</info>  <strong>$status</strong>  Параметр <strong>$status</strong> — это параметр статуса, передаваемый для успешного вызова функции
                <strong>pcntl_waitpid()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если код завершения дочернего процесса соответствует нормальному
        завершению. Если нет, то возвращает <info>false</info>.

<comment>See Also:</comment>
   * <strong>pcntl_waitpid()</strong>
   * <strong>pcntl_wexitstatus()</strong>


id: pcntl_wifsignaled
type: function
doc:
<comment>Description:</comment>
  Проверить, соответствует ли код завершения процесса завершению по сигналу
  
  Проверить, соответствует ли код завершения процесса завершению по сигналу.

<comment>Param:</comment>
  <info>int</info>  <strong>$status</strong>  Параметр <strong>$status</strong> — это параметр статуса, передаваемый для успешного вызова функции
                <strong>pcntl_waitpid()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если дочерний процесс был завершён из-за неперехваченного сигнала. Если
        нет, то возвращает <info>false</info>.

<comment>See Also:</comment>
   * <strong>pcntl_waitpid()</strong>
   * <strong>pcntl_signal()</strong>


id: pcntl_wifstopped
type: function
doc:
<comment>Description:</comment>
  Проверить, остановлен ли дочерний процесс
  
  Проверяет, остановлен ли дочерний процесс вызвавший возврат; это возможно только если функция
  <strong>pcntl_waitpid()</strong> вызывалась с опцией <return>WUNTRACED</return>.

<comment>Param:</comment>
  <info>int</info>  <strong>$status</strong>  Параметр <strong>$status</strong> — это параметр статуса, передаваемый для успешного вызова функции
                <strong>pcntl_waitpid()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если дочерний процесс вызвавший возврат сейчас остановлен. Если нет, то
        возвращает <info>false</info>.

<comment>See Also:</comment>
   * <strong>pcntl_waitpid()</strong>


id: pcntl_wstopsig
type: function
doc:
<comment>Description:</comment>
  Получить сигнал, из-за которого был остановлен дочерний процесс
  
  Возвращает сигнал, из-за которого был остановлен дочерний процесс. Функция имеет смысл только если
  <strong>pcntl_wifstopped()</strong> вернула <info>true</info>.

<comment>Param:</comment>
  <info>int</info>  <strong>$status</strong>  Параметр <strong>$status</strong> — это параметр статуса, передаваемый для успешного вызова функции
                <strong>pcntl_waitpid()</strong>.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает номер сигнала. Если эта функция не поддерживается ОС, возвращается <info>false</info>.

<comment>See Also:</comment>
   * <strong>pcntl_waitpid()</strong>
   * <strong>pcntl_wifstopped()</strong>


id: pcntl_wtermsig
type: function
doc:
<comment>Description:</comment>
  Получить сигнал, из-за которого был принудительно завершён дочерний процесс
  
  Возвращает номер сигнала, из-за которого был принудительно завершён дочерний процесс. Имеет смысл
  только если <strong>pcntl_wifsignaled()</strong> вернула <info>true</info>.

<comment>Param:</comment>
  <info>int</info>  <strong>$status</strong>  Параметр <strong>$status</strong> — это параметр статуса, передаваемый для успешного вызова функции
                <strong>pcntl_waitpid()</strong>.

<comment>Return:</comment>
  <info>int|false</info>  Возвращает номер сигнала. Если эта функция не поддерживается ОС, возвращается <info>false</info>.

<comment>See Also:</comment>
   * <strong>pcntl_waitpid()</strong>
   * <strong>pcntl_signal()</strong>
   * <strong>pcntl_wifsignaled()</strong>


id: pfsockopen
type: function
doc:
<comment>Description:</comment>
  Открывает постоянное соединение с интернет-сокетом или доменным сокетом Unix
  
  Эта функция является полным аналогом функции <strong>fsockopen()</strong> с той лишь разницей, что соединение не
  закрывается после завершения работы скрипта. Это версия функции <strong>fsockopen()</strong> с возможностью
  постоянного подключения.

<comment>Return:</comment>
  <info>resource|false</info>  <strong>pfsockopen()</strong> возвращает файловый указатель, который можно использовать с
                  функциями, работающие с файлами (такие как <strong>fgets()</strong>, <strong>fgetss()</strong>, <strong>fwrite()</strong>, <strong>fclose()</strong> и
                  <strong>feof()</strong>) или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>fsockopen()</strong>


id: pg_affected_rows
type: function
doc:
<comment>Description:</comment>
  Возвращает количество затронутых запросом записей (кортежей)
  
  <strong>pg_affected_rows()</strong> возвращает количество кортежей (сущностей/записей/рядов) затронутых запросом
  <return>INSERT</return>, <return>UPDATE</return>, и <return>DELETE</return> queries.
  
  С версии PostgreSQL 9.0 и новее, сервер возвращает число выбранных рядов для запроса SELECT. Более
  старые версии возвращают 0 для SELECT.
  
  Ранее данная функция называлась <strong>pg_cmdtuples()</strong>.

<comment>Param:</comment>
  <info>PgSql\Result</info>  <strong>$result</strong>  Экземпляр <class>PgSql\Result</class>, возвращаемый функциями <strong>pg_query()</strong>,
                         <strong>pg_query_params()</strong> или <strong>pg_execute()</strong> (среди прочего).

<comment>Return:</comment>
  <info>int</info>  Количество записей, затронутых запросом. Если ни один кортеж не был затронут, функция вернёт
       <return>0</return>.

<comment>See Also:</comment>
   * <strong>pg_query()</strong>
   * <strong>pg_query_params()</strong>
   * <strong>pg_execute()</strong>
   * <strong>pg_num_rows()</strong>


id: pg_cancel_query
type: function
doc:
<comment>Description:</comment>
  Остановка асинхронного запроса.
    
  
  <strong>pg_cancel_query()</strong> отменяет выполнение асинхронного запроса, отправленного функциями
  <strong>pg_send_query()</strong>, <strong>pg_send_query_params()</strong> или <strong>pg_send_execute()</strong>. Невозможно завершить выполнение
  запроса, запущенное функцией <strong>pg_query()</strong>.

<comment>Param:</comment>
  <info>PgSql\Connection</info>  <strong>$connection</strong>  Экземпляр <class>PgSql\Connection</class>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pg_send_query()</strong>
   * <strong>pg_connection_busy()</strong>


id: pg_client_encoding
type: function
doc:
<comment>Description:</comment>
  Получение кодировки клиента.
    
  
  PostgreSQL поддерживает автоматическое преобразование наборов символов между сервером и клиентом
  для некоторых кодировок. <strong>pg_client_encoding()</strong> возвращает клиентскую кодировку в виде строки,
  представляющей собой стандартный идентификатор кодировки PostgreSQL.
  
  Для работы функции требуется PostgreSQL версии 7.0 или выше. В случае, если libpg скомпилирована
  без поддержки многобайтовых кодировок, <strong>pg_client_encoding()</strong> всегда возвращает <return>SQL_ASCII</return>. Набор
  поддерживаемых кодировок зависит от версии сервера БД и описан в документации PostgreSQL.
  
  Функция, используемая для вызова: <strong>pg_clientencoding()</strong>.

<comment>Param:</comment>
  <info>PgSql\Connection|null</info>  <strong>$connection</strong>  Экземпляр <class>PgSql\Connection</class>.
                                      Если параметр <strong>$connection</strong> указан <info>null</info>, используется соединение
                                      по умолчанию. Соединение по умолчанию — это последнее
                                      соединение, выполненное с помощью функций <strong>pg_connect()</strong> или
                                      <strong>pg_pconnect()</strong>.
                                      Начиная с версии PHP 8.1.0, использование соединения по
                                      умолчанию устарело.
                                      
                                      Начиная с версии PHP 8.1.0, использование соединения по
                                      умолчанию устарело.

<comment>Return:</comment>
  <info>string</info>  Клиентская кодировка.

<comment>See Also:</comment>
   * <strong>pg_set_client_encoding()</strong>


id: pg_close
type: function
doc:
<comment>Description:</comment>
  Закрывает соединение с базой данных PostgreSQL
  
  <strong>pg_close()</strong> закрывает обычное (непостоянное) соединение с базой данных PostgreSQL, соответствующее
  экземпляру <strong>$connection</strong>.
  
  Использование <strong>pg_close()</strong>, как правило, необязательно, так как непостоянные соединения закрываются
  автоматически при завершении работы скрипта.
  
  Если с соединением работают экземпляры <class>PgSql\Lob</class>, то перед закрытием соединения необходимо закрыть
  все экземпляры <class>PgSql\Lob</class>.

<comment>Param:</comment>
  <info>PgSql\Connection|null</info>  <strong>$connection</strong>  Экземпляр <class>PgSql\Connection</class>.
                                      Если параметр <strong>$connection</strong> указан <info>null</info>, используется соединение
                                      по умолчанию. Соединение по умолчанию — это последнее
                                      соединение, выполненное с помощью функций <strong>pg_connect()</strong> или
                                      <strong>pg_pconnect()</strong>.
                                      Начиная с версии PHP 8.1.0, использование соединения по
                                      умолчанию устарело.
                                      
                                      Начиная с версии PHP 8.1.0, использование соединения по
                                      умолчанию устарело.

<comment>Return:</comment>
  <info>true</info>  Функция всегда возвращает <info>true</info>.

<comment>See Also:</comment>
   * <strong>pg_connect()</strong>


id: pg_connect
type: function
doc:
<comment>Description:</comment>
  Открывает соединение с базой данных PostgreSQL
  
  <strong>pg_connect()</strong> открывает соединение с базой данных PostgreSQL, определённое строкой
  <strong>$connection_string</strong>.
  
  При повторном вызове функции <strong>pg_connect()</strong> с теми же значениями параметров в <strong>$connection_string</strong>
  функция вернёт существующее подключение. Чтобы принудительно создать новое соединение, необходимо
  передать строку подключения функции <info>PGSQL_CONNECT_FORCE_NEW</info> в качестве параметра <strong>$flags</strong>.
  
  Прежний синтаксис с множеством параметров $conn = pg_connect("host", "port", "options", "tty",
  "dbname")  считается устаревшим.

<comment>Param:</comment>
  <info>string</info>  <strong>$connection_string</strong>  Строка <strong>$connection_string</strong> может быть пустой строкой или содержать
                              несколько параметров, разделённых пробелами. Каждый параметр
                              указывается как <return>keyword = value</return>. Пробелы вокруг знака "равно"
                              необязательны. Пустые строки в качестве значения или значения,
                              содержащие пробелы отделяются одинарными кавычками, как например,
                              <return>keyword = 'a value'</return>. Для записи одинарных кавычек и обратных слешей в
                              качестве значений, их необходимо экранировать обратным слешем, то есть
                              \' и \\.
                              
                              Список основных ключевых слов: <strong>$host</strong>, <strong>$hostaddr</strong>, <strong>$port</strong>, <strong>$dbname</strong>
                              (значение по умолчанию для параметра <strong>$user</strong>), <strong>$user</strong>, <strong>$password</strong>,
                              <strong>$connect_timeout</strong>, <strong>$options</strong>, <strong>$tty</strong> (игнорируется), <strong>$sslmode</strong>, <strong>$requiressl</strong>
                              (устарело в связи с использованием параметра <strong>$sslmode</strong>), и <strong>$service</strong>.
                              Какие из этих аргументов будут обработаны, зависит от версии
                              PostgreSQL.
                              
                              Параметр <strong>$options</strong> служит для установки параметров командной строки,
                              которые обработаны сервером.
  <info>int</info>     <strong>$flags</strong>              Если в функцию передана константа <info>PGSQL_CONNECT_FORCE_NEW</info>, будет
                              создаваться новое подключение, даже если <strong>$connection_string</strong> идентична
                              строке существующего подключения.
                              
                              Если передана константа <info>PGSQL_CONNECT_ASYNC</info>, то соединение
                              устанавливается асинхронным. Состояние соединения можно проверить с
                              помощью функций <strong>pg_connect_poll()</strong> или <strong>pg_connection_status()</strong>.

<comment>Return:</comment>
  <info>PgSql\Connection|false</info>  Возвращает экземпляр <class>PgSql\Connection</class> в случае успешного выполнения или
                          <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pg_pconnect()</strong>
   * <strong>pg_close()</strong>
   * <strong>pg_host()</strong>
   * <strong>pg_port()</strong>
   * <strong>pg_tty()</strong>
   * <strong>pg_options()</strong>
   * <strong>pg_dbname()</strong>


id: pg_connect_poll
type: function
doc:
<comment>Description:</comment>
  Опросить статус попытки асинхронного соединения PostgreSQL.
    
  
  <strong>pg_connect_poll()</strong> опрашивает статус соединения PostgreSQL, созданного вызовом функции <strong>pg_connect()</strong>
  с параметром <info>PGSQL_CONNECT_ASYNC</info>.

<comment>Param:</comment>
  <info>PgSql\Connection</info>  <strong>$connection</strong>  Экземпляр <class>PgSql\Connection</class>.

<comment>Return:</comment>
  <info>int</info>  Возвращает <info>PGSQL_POLLING_FAILED</info>, <info>PGSQL_POLLING_READING</info>, <info>PGSQL_POLLING_WRITING</info>,
       <info>PGSQL_POLLING_OK</info> или <info>PGSQL_POLLING_ACTIVE</info>.


id: pg_connection_busy
type: function
doc:
<comment>Description:</comment>
  Проверяет, занято ли соединение в данный момент.
    
  
  <strong>pg_connection_busy()</strong> определяет, занято соединение в данный момент или нет. Соединение занято,
  когда предыдущий запрос ещё выполняется. Функция <strong>pg_get_result()</strong> также блокирует соединение на
  время своего выполнения.

<comment>Param:</comment>
  <info>PgSql\Connection</info>  <strong>$connection</strong>  Экземпляр <class>PgSql\Connection</class>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info>, если соединение занято, в противном случае <info>false</info>.

<comment>See Also:</comment>
   * <strong>pg_connection_status()</strong>
   * <strong>pg_get_result()</strong>


id: pg_connection_reset
type: function
doc:
<comment>Description:</comment>
  Сброс подключения (переподключение)
    
  
  <strong>pg_connection_reset()</strong> сбрасывает подключение. Может быть использована для устранения ошибок.

<comment>Param:</comment>
  <info>PgSql\Connection</info>  <strong>$connection</strong>  Экземпляр <class>PgSql\Connection</class>.

<comment>Return:</comment>
  <info>bool</info>  Возвращает <info>true</info> в случае успешного выполнения или <info>false</info> в случае возникновения ошибки.

<comment>See Also:</comment>
   * <strong>pg_connect()</strong>
   * <strong>pg_pconnect()</strong>
   * <strong>pg_connection_status()</strong>


