Учебник PHP

         

OCIFreeDesc

(PHP 4)

OCIFreeDesc - удаляет дескриптор большого объекта.

Описание

int OCIFreeDesc (object lob)

OCIFreeDesc() возвращает TRUE при успехе, FALSE при неудаче.

OCIFreeStatement

(PHP 3>= 3.0.5, PHP 4)

OCIFreeStatement - освобождает все русурсы, ассоциированные с оператором.

Описание

int OCIFreeStatement (int stmt)

OCIFreeStatement() возвращает TRUE при успехе, FALSE при неудаче.

OCIInternalDebug

(PHP 3>= 3.0.4, PHP 4)

OCIInternalDebug - включает/отключает вывод внутренней отладки.

Описание

void OCIInternalDebug (int onoff)

OCIInternalDebug() включает/отключает вывод внутренней отладочной информации. Установите в onoff 0 для отключения, 1 для включения.

OCILoadLob

(PHP 4)

OCILoadLob - скоро будет.

Описание

string OCILoadLob (object lob)

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

OCILogOff

(PHP 3>= 3.0.4, PHP 4)

OCILogOff - отключает от Oracle.

Описание

int OCILogOff (int connection)

OCILogOff() закрывает соединение с Oracle.

OCILogon

(PHP 3>= 3.0.4, PHP 4)

OCILogon - устанавливает соединение с Oracle.

Описание

int OCILogon (string username, string password [, string db])

OCILogon() возвращает идентификатор соединения, необходимый для большинства других OCI-вызовов.


Необязательный третий параметр может содержать имя локального экземпляра Oracle или имя вхождения в tnsnames.ora, с которым вы хотите соединиться. Если необязательный третий параметр не специфицирован, PHP использует переменные окружения ORACLE_SID (Oracle-экземпляр) или TWO_TASK (tnsnames.ora) для определения того, с какой БД соединиться.

Соединения используются совместно на уровне страницы при работе с OCILogon(). Это значит, что подтверждения и откаты применяются ко всем открытым транзакциям на странице, даже если вы создали несколько соединений.

В примере показано, как совместно использовать/share соединения.

OCINewCollection

(PHP 4 >= 4.0.6)

OCINewCollection - скоро будет.

Описание

string OCINewCollection (int conn, string tdo [, string shema])

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

OCINewCursor

(PHP 3>= 3.0.8, PHP 4)

OCINewCursor - возвращает новый курсор (Statement-Handle/дескриптор оператора).

Описание

int OCINewCursor (int conn)

OCINewCursor() выделяет новый дескриптор оператора в специфицированном соединении.

OCINewDescriptor

(PHP 3>= 3.0.7, PHP 4)

OCINewDescriptor - инициализирует новый пустой LOB или FILE-дескриптор.

Описание

string OCINewDescriptor (int connection [, int type])

OCINewDescriptor() выделяет место для хранения дескрипторов или LOB-локаторов. Правильными значениями для type являются OCI_D_FILE, OCI_D_LOB, OCI_D_ROWID. Для LOB-дескрипторов методы load, save и savefile ассоциированы с этим дескриптором, для BFILE имеется только метод load. См. примечания по использованию во втором примере.

OCINLogon

(PHP 3>= 3.0.8, PHP 4)

OCINLogon - устанавливает новое соединение с Oracle.

Описание

int OCINLogon (string username, string password [, string db])

OCINLogon() создаёт новое соединение с БД Oracle 8 и выполняет вход. Необязательный третий параметр может содержать имя локального экземпляра Oracle или имя вхождения в tnsnames.ora, с которым вы хотите соединиться. Если необязательный третий параметр не специфицирован, PHP использует переменные окружения ORACLE_SID (Oracle-экземпляр) или TWO_TASK (tnsnames.ora) для определения того, с какой БД соединяться.

OCINLogon() форсирует создание нового соединения. Это нужно использовать, если вам необходимо изолировать набор транзакций. По умолчанию соединения совместно используются/share на уровне страницы, если применяется OCILogon(), либо на уровне процесса web-сервера, если используется OCIPLogon(). Если у вас имеется несколько соединений, открытых с помощью OCINLogon(), все подтверждения и откаты применяются только к специфицированному соединению.

В примере показано разделение соединений.

OCINumCols

(PHP 3>= 3.0.4, PHP 4)

OCINumCols - возвращает количество результирующих столбцов в операторе.

Описание

int OCINumCols (int stmt)

OCINumCols() возвращает количество столбцов в данном операторе.

OCIParse

(PHP 3>= 3.0.4, PHP 4)

OCIParse - разбирает запрос и возвращает оператор.

Описание

int OCIParse (int conn, string query)

OCIParse() разбирает query с помощью conn. Возвращает идентификацию оператора, если запрос верен, иначе FALSE. Параметр query это любой верный SQL-оператор или блок PL/SQL.

OCIPLogon

(PHP 3>= 3.0.8, PHP 4)

OCIPLogon - соединяет с БД Oracle с использованием постоянного соединения.

Описание

int OCIPLogon (string username, string password [, string db])

OCIPLogon() создаёт постоянное соединение с БД Oracle 8 и выполняет вход в неё. Необязательный третий параметр может содержать имя локального экземпляра Oracle или имя вхождения в tnsnames.ora, с которым вы хотите соединиться. Если необязательный третий параметр не специфицирован, PHP использует переменные окружения ORACLE_SID (Oracle-экземпляр) или TWO_TASK (tnsnames.ora) для определения того, с какой БД соединяться.

См. также OCILogon() и OCINLogon().

OCIResult

(PHP 3>= 3.0.4, PHP 4)

OCIResult - возвращает значение столбца для извлечённого ряда.

Описание

mixed OCIResult (int statement, mixed column)

OCIResult() возвращает данные для столбца column в текущем ряду (см. OCIFetch()). OCIResult() возвращает в виде строк всё, кроме абстрактных типов (ROWIDs, LOBs и FILEs).

OCIRollback

(PHP 3>= 3.0.7, PHP 4)

OCIRollback - откатывает внешние транзакции.

Описание

int OCIRollback (int connection)

OCIRollback() откатывает все внешние/outstanding операторы для Oracle-соединения connection.

OCIRowCount

(PHP 3>= 3.0.7, PHP 4)

OCIRowCount - получает количество задействованных рядов.

Описание

int OCIRowCount (int statement)

OCIRowCount() возвращает количество рядов, задействованных, к примеру, в операторах update. Эта функция не сообщает вам о количестве рядов, возвращаемых оператором select!

Пример 1. OCIRowCount
<?php
print "<HTML><PRE>";
$conn = OCILogon("scott","tiger");
$stmt = OCIParse($conn,"create table emp2 as select * from emp");
OCIExecute($stmt);
print OCIRowCount($stmt) . " rows inserted.<BR>";
OCIFreeStatement($stmt);
$stmt = OCIParse($conn,"delete from emp2");
OCIExecute($stmt);
print OCIRowCount($stmt) . " rows deleted.<BR>";
OCICommit($conn);
OCIFreeStatement($stmt);
$stmt = OCIParse($conn,"drop table emp2");
OCIExecute($stmt);
OCIFreeStatement($stmt);
OCILogOff($conn);
print "</PRE></HTML>";
?>

OCISaveLob

(PHP 4)

OCISaveLob - скоро будет.

Описание

string OCISaveLob (object lob)

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

OCISaveLobFile

(PHP 4)

OCISaveLobFile - скоро будет.

Описание

string OCISaveLobFile (object lob)

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

OCIServerVersion

(PHP 3>= 3.0.4, PHP 4)

OCIServerVersion - возвращает строку с информацией о версии сервера.

Описание

string OCIServerVersion (int conn)

OCISetPrefetch

(PHP 3>= 3.0.12, PHP 4)

OCISetPrefetch - устанавливает количество предварительно извлекаемых рядов.

Описание

int OCISetPrefetch (int stmt, int rows)

Устанавливает количество предварительно извлекаемых рядов верхнего уровня. По умолчанию 1 ряд.

OCIStatementType

(PHP 3>= 3.0.5, PHP 4)

OCIStatementType - возвращает тип OCI-оператора.

Описание

string OCIStatementType (int stmt)

OCIStatementType() возвращает одно из следующих значений:

    "SELECT"

    "UPDATE"

    "DELETE"

    "INSERT"

    "CREATE"

    "DROP"

    "ALTER"

    "BEGIN"

    "DECLARE"

    "UNKNOWN"

OCIWriteLobToFile

(PHP 4)

OCIWriteLobToFile - скоро будет.

Описание

void OCIWriteLobToFile (object lob [, string filename [, int start [, int lenght]]])

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

octdec

(PHP 3, PHP 4)

octdec - 8-ричное в 10-ричное.

Описание

int octdec (string octal_string)

Возвращает десятеричный эквивалент 8-ричного числа, представленного аргументом octal_string. Наибольшее число, которое может быть конвертировано, 17777777777, или 2147483647 в десятеричном выражении.

См. также decoct().

odbc_autocommit

(PHP 3>= 3.0.6, PHP 4)

odbc_autocommit - включает/выключает режим автоподтверждения/autocommit.

Описание

bool odbc_autocommit (resource connection_id [, bool OnOff])

Без параметра OnOff эт функция возвращает статус автоподтверждения для соединения connection_id. TRUE возвращается, если автоподтверждение включено, FALSE, если отключено или если возникла ошибка.

Если OnOff TRUE, автоподтверждение включено, если FALSE - автоподтверждение отключено. Возвращает TRUE при успехе, FALSE при неудаче.

По умолчанию автоподтверждение для соединения включено. Отключение автоподтверждения эквивалентно старту транзакции.

См. также odbc_commit() и odbc_rollback().

odbc_binmode

(PHP 3>= 3.0.6, PHP 4)

odbc_binmode - обработка данных бинарного столбца.

Описание

int odbc_binmode (resource result_id, int mode)

(вовлекаемые в обработку ODBC SQL-типы: BINARY, VARBINARY, LONGVARBINARY)

ODBC_BINMODE_PASSTHRU: передаёт BINARY-данные

ODBC_BINMODE_RETURN: возвращает как есть

ODBC_BINMODE_CONVERT: конвертирует в char и возвращает

Если бинарные SQL-данные конвертируются в character-данные C, каждый байт (8 бит) исходных данных представляется как два ASCII-символа. Эти символы являются символьным ASCII-представлением 16-ричного числа. Например, двоичное 00000001 конвертируется в "01", а двоичное 11111111 конвертируется в "FF".

Таблица 1. Работа с LONGVARBINARY
binmode longreadlenresultODBC_BINMODE_PASSTHRU 0передаётODBC_BINMODE_RETURN0передаёт ODBC_BINMODE_CONVERT0передаётODBC_BINMODE_PASSTHRU 0передаётODBC_BINMODE_PASSTHRU>0передаёт ODBC_BINMODE_RETURN>0возвращает как естьODBC_BINMODE_CONVERT >0возвращает как char

Если odbc_fetch_into() используется, передача/passthru означает, что для этих столбцов возвращаются пустые строки.

Если result_id равен 0, эти установки применяются по умолчанию для новых результатов.

Примечание: по умолчанию longreadlen равно 4096, а binmode - ODBC_BINMODE_RETURN. На обработку двоичных long-столбцов влияет также odbc_longreadlen().

odbc_close

(PHP 3>= 3.0.6, PHP 4)

odbc_close - закрывает ODBC-соединение.

Описание

void odbc_close (resource connection_id)

odbc_close() закрывает соединение с сервером БД, ассоциированным с данным идентификатором ссылки.

Примечание: эта функция терпит неудачу, если имеются транзакции, открытые в этом соединении. Соединение в этом случае остаётся открытым.

odbc_close_all

(PHP 3>= 3.0.6, PHP 4)

odbc_close_all - закрывает все ODBC-соединения.

Описание

void odbc_close_all (void)

odbc_close_all() закрывает все соединения с сервером(-ами) БД.

Примечание: эта функция терпит неудачу, если имеются транзакции, открытые в этом соединении. Соединение в этом случае остаётся открытым.

odbc_columnprivileges

(PHP 4)

odbc_columnprivileges - возвращает идентификатор результата, который может использоваться при извлечении списка столбцов и ассоциированных привилегий.

Описание

int odbc_columnprivileges (resource connection_id [, string qualifier [, string owner [, string table_name [, string column_name]]]])

Возвращает список столбцов и ассоциированных привилегий данной таблицы. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

TABLE_QUALIFIER

TABLE_OWNER

TABLE_NAME

GRANTOR

GRANTEE

PRIVILEGE

IS_GRANTABLE

Результирующий набор упорядочен по TABLE_QUALIFIER, TABLE_OWNER и TABLE_NAME.

Аргумент column_name принимает патэрны поиска ('%' для совпадения с 0 или более символов, '_' для совпадения с одиночным символом).

odbc_columns

(PHP 4)

odbc_columns - список имён столбцов в специфицированной таблице. Возвращает результирующий идентификатор, содержащий информацию.

Описание

int odbc_columns (resource connection_id [, string qualifier [, string owner [, string table_name [, string column_name]]]])

Выдаёт список всех столбцов в заданном диапазоне. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

TABLE_QUALIFIER

TABLE_OWNER

TABLE_NAME

COLUMN_NAME

DATA_TYPE

TYPE_NAME

PRECISION

LENGTH

SCALE

RADIX

NULLABLE

REMARKS

Результирующий набор упорядочен по TABLE_QUALIFIER, TABLE_OWNER и TABLE_NAME.

Аргументы owner, table_name и column_name принимают патэрны поиска ('%' для совпадения 0 или более раз, '_' для совпадения с одиночным символом).

См. также odbc_columnprivileges() для запрашивания ассоциированных привилегий.

odbc_commit

(PHP 3>= 3.0.6, PHP 4)

odbc_commit - подтверждает ODBC-транзакцию.

Описание

bool odbc_commit (resource connection_id)

Возвращает TRUE при успехе, FALSE при неудаче. Все запущенные транзакции на соединении connection_id подтверждаются.

odbc_connect

(PHP 3>= 3.0.6, PHP 4)

odbc_connect - соединяет с источником данных.

Описание

resource odbc_connect (string dsn, string user, string password [, int cursor_type])

Возвращает id ODBC-соединения, 0 (FALSE) при ошибке.

id соединения, возвращаемый этой функцией, необходим для других ODBC-функций. Вы можете иметь одновременно открытыми несколько соединений. Необязательный четвёртый параметр устанавливает тип курсора, используемый для этого соединения. Обычно этот параметр не нужен, но может использоваться при решении проблем с некоторыми драйверами 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 parameter в odbc_fetch_row(). И SQL_CUR_USE_ODBC может помочь в этом случае.

Для типа курсора определены следующие константы:

SQL_CUR_USE_IF_NEEDED

SQL_CUR_USE_ODBC

SQL_CUR_USE_DRIVER

SQL_CUR_DEFAULT

О постоянных соединениях см. odbc_pconnect().

odbc_cursor

(PHP 3>= 3.0.6, PHP 4)

odbc_cursor - получает имя курсора.

Описание

string odbc_cursor (resource result_id)

odbc_cursor возвратит имя курсора/cursorname для данного result_id.

odbc_do

(PHP 3>= 3.0.6, PHP 4)

odbc_do - синоним odbc_exec()

Описание

resource odbc_do (resource conn_id, string query)

odbc_do() выполняет запрос/query в данном соединении.

odbc_error

(PHP 4 >= 4.0.5)

odbc_error - получает последний код ошибки.

Описание

string odbc_error ([resource connection_id])

Возвращает ODBC-статус из 6 цифр, или пустую строку, если ошибок нет. Если connection_id специфицирован, возвращается последний статус для данного соединения, иначе возвращается последний статус любого соединения.

См. также odbc_errormsg() и odbc_exec().

odbc_errormsg

(PHP 4 >= 4.0.5)

odbc_errormsg - получает последнее сообщение об ошибке.

Описание

string odbc_errormsg ([resource connection_id])

Возвращает строку с последним сообщением об ошибке ODBC, либо пустую строку, если ошибок нет. Если connection_id специфицирован, возвращается последний статус для данного соединения, иначе возвращается последний статус любого соединения.

См. также odbc_error() и odbc_exec().

odbc_exec

(PHP 3>= 3.0.6, PHP 4)

odbc_exec - готовит и выполняет SQL-оператор.

Описание

resource odbc_exec (resource connection_id, string query_string)

Возвращает FALSE при ошибке. Возвращает результирующий идентификатор ODBC, если SQL-команда была выполнена успешно.

odbc_exec() отправляет SQL-оператор серверу БД, специфицированному параметром connection_id. Этот параметр обязан быть правильным идентификатором, возвращённым функцией odbc_connect() или odbc_pconnect().

См. также в odbc_prepare() и odbc_execute() множественное выполнение SQL-операторов.

odbc_execute

(PHP 3>= 3.0.6, PHP 4)

odbc_execute - выполняет подготовленный оператор.

Описание

resource odbc_execute (resource result_id [, array parameters_array])

Выполняет оператор, подготовленный функцией odbc_prepare(). Возвращает TRUE при успешном выполнении; FALSE в ином случае. Массив parameters_array должен задаваться только тогда, когда у вас действительно имеются параметры оператора.

Параметры в parameter_array заместят заглушки в подготовленном операторе.

Любые параметры в parameter_array начинаются и заканчиваются одиночной кавычкой, что будет читаться как имя файла и будет отправлено серверу БД как данные для соответствующей заглушки.

Примечание: в PHP 4.1.1 эта функциональность при чтении фалов имеет следующие ограничения:

чтение файлов не является субъектом safe mode или ограничений safe mode. Это изменено в PHP 4.2.0.

Remote/удалённые файлы не поддерживаются.

Если вы хотите сохранить строку, которая начинается и заканчивается одиночными кавычками, вы обязаны мнемонизировать/escape её или добавить пробел или другой не-single-quote символ в начало или конец параметра, что предотвратит использование этого параметра в качестве имени файла. Если это не подходит, вы обязаны использовать другой механизм для хранения строки: такой как непосредственное выполнение запроса функцией odbc_exec()).

odbc_fetch_array

(PHP 4 >= 4.0.2)

odbc_fetch_array - извлекает результирующий ряд как ассоциативный массив.

Описание

array odbc_fetch_array (resource result [, int rownumber])

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

odbc_fetch_into

(PHP 3>= 3.0.6, PHP 4)

odbc_fetch_into - извлекает один результирующий ряд в массив.

Описание

bool odbc_fetch_into (resource result_id [, int rownumber, array result_array])

resource odbc_fetch_into ( resource result_id, array result_array [, int rownumber])

Возвращает количество столбцов в результате; FALSE при ошибке.
result_array
обязан передаваться по ссылке, но может быть любого типа, поскольку будет конвертирован в массив. Этот массив будет содержать значения столбцов, начиная с индекса 0 массива.

В PHP 4.0.5 result_array никуда дальше не должен передаваться по ссылке.

В PHP 4.0.6 rownumber не может передаваться как константа - только как переменная.

В PHP 4.2.0 result_array и rownumber меняются местами. Это вновь позволяет rownumber быть константой. Это будет последним изменением.

odbc_fetch_object

(PHP 4 >= 4.0.2)

odbc_fetch_object - извлекает результирующий ряд как объект.

Описание

object odbc_fetch_object (resource result [, int rownumber])

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

odbc_fetch_row

(PHP 3>= 3.0.6, PHP 4)

odbc_fetch_row - извлекает ряд.

Описание

bool odbc_fetch_row (resource result_id [, int row_number])

Если odbc_fetch_row() прошла успешно (ряд был), возвращается TRUE. Если рядов больше нет, возвращается FALSE.

odbc_fetch_row() извлекает ряд данных, который был возвращён функцией odbc_do() / odbc_exec(). После вызова odbc_fetch_row() доступ к полям этого ряда осуществляется с помощью odbc_result().

Если row_number не специфицирован, odbc_fetch_row() попытается извлечь следующий ряд результирующего набора. Вызовы odbc_fetch_row() с и без row_number можно смешивать.

Для прохода по результату более одного раза можно вызывать odbc_fetch_row() с row_number 1, а затем продолжать выполнение odbc_fetch_row() без row_number для просмотра результата. Если драйвер не поддерживает извлечение рядов по номеру, параметр row_number игнорируется.

odbc_field_len

(PHP 3>= 3.0.6, PHP 4)

odbc_field_len - получает размер (точность) поля.

Описание

int odbc_field_len (resource result_id, int field_number)

odbc_field_len() возвращает длину поля, на которое ссылаются по номеру в данном результирующем идентификаторе ODBC. Номера полей начинаются с 1.

См. также odbc_field_scale() для получения масштаба чисел с плавающей точкой.

odbc_field_name

(PHP 3>= 3.0.6, PHP 4)

odbc_field_name - получает имя столбца.

Описание

string odbc_field_name (resource result_id, int field_number)

odbc_field_name() will возвращает имя поля, занимающего данный столбец номер в данном результирующем идентификаторе ODBC. Номера полей начинаются с 1. FALSE возвращается при ошибке.

odbc_field_num

(PHP 3>= 3.0.6, PHP 4)

odbc_field_num - возвращает номер столбца.

Описание

int odbc_field_num (resource result_id, string field_name)

odbc_field_num() возвращает номер слота столбца, соответствующий именованному полю данного результирующего идентификатора ODBC. Нумерация полей начинается с 1. FALSE при ошибке.

odbc_field_precision

(PHP 4)

odbc_field_precision - синоним odbc_field_len()

Описание

string odbc_field_precision (resource result_id, int field_number)

odbc_field_precision() возвращает точность поля, на которое ссылается по номеру в данном результирующем идентификаторе ODBC.

См. также odbc_field_scale() для получения масштаба чисел с плавающей точкой.

odbc_field_scale

(PHP 4)

odbc_field_scale - получает масштаб поля.

Описание

string odbc_field_scale (resource result_id, int field_number)

odbc_field_precision() возвращает масштаб поля, на которое ссылается по номеру в данном результирующем идентификаторе ODBC.

odbc_field_type

(PHP 3>= 3.0.6, PHP 4)

odbc_field_type - тип данных поля.

Описание

string odbc_field_type (resource result_id, int field_number)

odbc_field_type() возвращает SQL-тип поля, на которое ссылается по номеру в данном результирующем идентификаторе ODBC. Поля нумеруются, начиная с 1.

odbc_foreignkeys

(PHP 4)

odbc_foreignkeys - возвращает список внешних ключей специфицированной таблицы или список внешних ключей других таблиц, которые ссылаются на первичный ключ в специфицированной таблице.

Описание

resource odbc_foreignkeys ( resource connection_id, string pk_qualifier, string pk_owner, string pk_table, string fk_qualifier, string fk_owner, string fk_table)

odbc_foreignkeys() запрашивает информацию о внешних/foreign ключах. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

PKTABLE_QUALIFIER

PKTABLE_OWNER

PKTABLE_NAME

PKCOLUMN_NAME

FKTABLE_QUALIFIER

FKTABLE_OWNER

FKTABLE_NAME

FKCOLUMN_NAME

KEY_SEQ

UPDATE_RULE

DELETE_RULE

FK_NAME

PK_NAME

Если pk_table содержит имя таблицы, odbc_foreignkeys() возвращает результирующий набор, содержащий первичный ключ специфицированной таблицы и все ссылающиеся на него внешние ключи.

Если fk_table содержит имя таблицы, odbc_foreignkeys() возвращает результирующий набор, содержащий все внешние ключи в специфицированной таблице и первичные ключи (других таблиц), на которые они ссылаются.

Если и pk_table, и fk_table содержат имена таблиц, odbc_foreignkeys() возвращает внешние ключи в специфицированной таблице fk_table, ссылающиеся на первичный ключ таблицы pk_table. Это может быть максимум один ключ.

odbc_free_result

(PHP 3>= 3.0.6, PHP 4)

odbc_free_result - освобождает ресурсы, ассоциированные с результатом.

Описание

bool odbc_free_result (resource result_id)

Всегда возвращает TRUE.

odbc_free_result() должна вызываться, только если вы беспокоитесь об использовании слишком большого количества памяти при работе вашего скрипта. Вся результирующая память освобождается автоматически при окончании работы скрипта. Но если вы уверены, что результирующие данные вам больше не понадобятся в скрипте, вы можете вызвать odbc_free_result(), и вся память, ассоциированная с result_id, будет освобождена.

Примечание: если автоподтверждение отключено (см. odbc_autocommit()) и вы вызываете odbc_free_result() перед подтверждением, все запущенные транзакции откатываются.

odbc_gettypeinfo

(PHP 4)

odbc_gettypeinfo - возвращает результирующий идентификатор, содержащий информацию о типах данных, поддерживаемых этим источником данных.

Описание

int odbc_gettypeinfo (resource connection_id [, int data_type])

Запрашивает информацию о типах данных, поддерживаемых этим источником данных. Возвращает результирующий идентификатор ODBC, FALSE при неудаче. Необязательный аргумент data_type может использоваться для ограничения информации единственным типом данных.

Результирующий набор содержит следующие столбцы:

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.

odbc_longreadlen

(PHP 3>= 3.0.6, PHP 4)

odbc_longreadlen - обслуживает LONG-столбцы.

Описание

int odbc_longreadlen (resource result_id, int length)

(действует на ODBC SQL-типы LONG, LONGVARBINARY) Количество байтов, возвращаемых в PHP, управляется параметром length. Если он 0, данные Long-столбцов передаются клиенту.

Примечание: на обработку LONGVARBINARY-столбцов влияет также odbc_binmode().

odbc_next_result

(PHP 4 >= 4.0.5)

odbc_next_result - проверяет, доступны ли множественные результаты.

Описание

bool odbc_next_result (resource result_id)

Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

odbc_num_fields

(PHP 3>= 3.0.6, PHP 4)

odbc_num_fields - количество столбцов в результате.

Описание

int odbc_num_fields (resource result_id)

odbc_num_fields() возвращает количество полей (столбцов) в ODBC-результате. Эта функция возвращает -1 при ошибке. Этот аргумент является правильным результирующим идентификатором, возвращаемым функцией odbc_exec().

odbc_num_rows

(PHP 3>= 3.0.6, PHP 4)

odbc_num_rows - количество рядов в результате.

Описание

int odbc_num_rows (resource result_id)

odbc_num_rows() возвращает количество столбцов в ODBC-результате. Эта функция возвращает -1 при ошибке. Для операторов INSERT, UPDATE и DELETE odbc_num_rows() возвращает количество задействованных рядов. Для оператора SELECT это может быть количество доступных рядов.

Примечание: использование odbc_num_rows() для определения количества доступных рядов после SELECT возвращает -1 со многими драйверами.

odbc_pconnect

(PHP 3>= 3.0.6, PHP 4)

odbc_pconnect - открывает постоянное соединение с БД.

Описание

int odbc_pconnect (string dsn, string user, string password [, int cursor_type])

Возвращает id ODBC-соединения или 0 (FALSE) при ошибке. Эта функция очень похожа на odbc_connect(), но соединение не закрывается по окончании работы скрипта. Последующие запросы к соединению с той же комбинацией dsn, user, password (через odbc_connect() и odbc_pconnect()) могут использовать это постоянное соединение.

Примечание: постоянные соединения не работают, если PHP используется как CGI-программа.

Об использовании параметра cursor_type см. odbc_connect(). Дополнительно о постоянных соединениях см. PHP FAQ.

odbc_prepare

(PHP 3>= 3.0.6, PHP 4)

odbc_prepare - готовит оператор для выполнения.

Описание

resource odbc_prepare (resource connection_id, string query_string)

Возвращает FALSE при ошибке.

Возвращает результирующий идентификатор ODBC, если SQL-команда была подготовлена успешно. Этот результирующий идентификатор может использоваться в дальнейшем для выполнения этого оператора с помощью odbc_execute().

odbc_primarykeys

(PHP 4)

odbc_primarykeys - возвращает результирующий идентификатор, который может использоваться для извлечения имён столбца, образующих первичный ключ таблицы.

Описание

resource odbc_primarykeys (resource connection_id, string qualifier, string owner, string table)

Возвращает имена столбца, образующие первичный ключ таблицы. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

TABLE_QUALIFIER

TABLE_OWNER

TABLE_NAME

COLUMN_NAME

KEY_SEQ

PK_NAME

odbc_procedurecolumns

(PHP 4)

odbc_procedurecolumns - запрашивает информацию о параметрах процедур.

Описание

resource odbc_procedurecolumns ( resource connection_id [, string qualifier [, string owner [, string proc [, string column]]]])

Возвращает список параметров ввода и вывода, а также столбцов, образующих результирующий набор специфицированной процедуры. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

PROCEDURE_QUALIFIER

PROCEDURE_OWNER

PROCEDURE_NAME

COLUMN_NAME

COLUMN_TYPE

DATA_TYPE

TYPE_NAME

PRECISION

LENGTH

SCALE

RADIX

NULLABLE

REMARKS

Результирующий набор упорядочен по PROCEDURE_QUALIFIER, PROCEDURE_OWNER, PROCEDURE_NAME и COLUMN_TYPE.

Аргументы owner, proc и column принимают патэрны поиска ('%' для совпадения с 0 или более символов, '_' для совпадения с одиночным символом).

odbc_procedures

(PHP 4)

odbc_procedures - получает список процедур, хранимых в специфическом источнике данных. Возвращает результирующий идентификатор, содержащий эту информацию.

Описание

resource odbc_procedures (resource connection_id [, string qualifier [, string owner [, string name]]])

Список всех процедур в запрошенном диапазоне. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

PROCEDURE_QUALIFIER

PROCEDURE_OWNER

PROCEDURE_NAME

NUM_INPUT_PARAMS

NUM_OUTPUT_PARAMS

NUM_RESULT_SET

REMARKS

PROCEDURE_TYPE

Аргументы owner и name принимают патэрны поиска ('%' для совпадения с 0 или более символов, '_' для совпадения с одиночным символом).

odbc_result

(PHP 3>= 3.0.6, PHP 4 )

odbc_result - получает результирующие данные.

Описание

string odbc_result (resource result_id, mixed field)

Возвращает содержимое поля.

field может быть целым числом, содержащим номер столбца нужного вам поля; либо строкой, содержащей имя поля. Например:

$item_3 = odbc_result ($Query_ID, 3);
$item_val = odbc_result ($Query_ID, "val");

Первый вызов odbc_result() возвращает значение третьего поля текущей записи результата запроса. Второй вызов функции odbc_result() возвращает значение поля, имя которого "val", текущей записи результата запроса. Возникает ошибка, если параметр номера столбца для этого поля меньше единицы или превосходит количество столбцов (или полей) в текущей записи. Аналогично ошибка возникает, если поле имеет имя, которое не является именем поля запрашиваемой таблицы.

Индексы полей начинаются с 1. В зависимости от того, данные каких столбцов возвращаются (binary или long), см. odbc_binmode() и odbc_longreadlen().

odbc_result_all

(PHP 3>= 3.0.6, PHP 4)

odbc_result_all - печатает результат как HTML-таблицу.

Описание

int odbc_result_all (resource result_id [, string format])

Возвращает количество рядов в результате, FALSE при ошибке.

odbc_result_all() печатает все ряды из результирующего идентификатора, созданные функцией odbc_exec(). Результат печатается в формате таблицы HTML. При помощи дополнительного аргумента format можно выполнять дополнительное форматирование таблицы.

odbc_rollback

(PHP 3>= 3.0.6, PHP 4)

odbc_rollback - откатывает транзакцию.

Описание

int odbc_rollback (resource connection_id)

Откатывает все запущенные операторы в соединении connection_id. Возвращает TRUE при успехе, FALSE при неудаче.

odbc_setoption

(PHP 3>= 3.0.6, PHP 4)

odbc_setoption - настраивает ODBC. Возвращает FALSE при ошибке, иначе TRUE.

Описание

int odbc_setoption (resource id, int function, int option, int param)

Эта функция позволяет работать с опциями ODBC для определённого соединения или результата запроса. Она была написана для того, чтобы помочь преодолеть проблемы с навороченными ODBC-драйверами. Вам, вероятно, понадобится использоваться эту функцию, только если вы программист ODBC и понимаете эффект использования разных опций. Вам действительно нужен большой опыт работы с ODBC, чтобы объяснить работу различных опций и используемых значений. Различные версии драйвера поддерживают разные опции.

Поскольку действие зависит от ODBC-драйвера, использование этой функции для публичной работы настоятельно не рекомендуется. Также некоторые опции ODBC недоступны для этой функции, поскольку они обязаны быть установлены до установления соединения или подготовки запроса. Однако, если ваш босс не заказал вам определённую работу с РНР для коммерческого применения, можете её использовать.

id это id соединения или id результата, в котором изменяются настройки. Для SQLSetConnectOption(), это id соединения. Для SQLSettmtOption() это id результата.

Function это используемая ODBC-функция. Значение должно быть 1 для SQLSetConnectOption() и 2 для SQLSettmtOption().

Параметр option это устанавливаемая опция.

Параметр param это значение данной option.

Пример 1. Примеры ODBC Setoption
// 1. Option 102 из SQLSetConnectOption() это SQL_AUTOCOMMIT.
// Значение 1 в SQL_AUTOCOMMIT это SQL_AUTOCOMMIT_ON.
// Этот пример имеет тот же эффект, что и
// odbc_autocommit($conn, true);
odbc_setoption ($conn, 1, 102, 1);
// 2. Option 0 из SQLSetstmtOption() это SQL_QUERY_TIMEOUT.
// Этот пример устанавливает таймаут запроса по истечении 30 секунд.
$result = odbc_prepare ($conn, $sql);
odbc_setoption ($result, 2, 0, 30);
odbc_execute ($result);

odbc_specialcolumns

(PHP 4)

odbc_specialcolumns - возвращает оптимальный набор столбцов, которые уникально идентифицируют ряд таблицы, или столбцы, которые автоматически обновляются при обновлении транзакцией любого значения ряда.

Описание

resource odbc_specialcolumns ( resource connection_id, int type, string qualifier, string owner, string table, int scope, int nullable)

Если аргумент type это SQL_BEST_ROWID, odbc_specialcolumns() возвращает столбец или столбцы, уникально идентифицирующие каждый ряд таблицы.

Если аргумент type это SQL_ROWVER, odbc_specialcolumns() возвращает оптимальный столбец или набор столбцов, запрашивая значения из столбца или столбцов, что позволяет уникально идентифицировать любой ряд в специфицированной таблице.

Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

SCOPE

COLUMN_NAME

DATA_TYPE

TYPE_NAME

PRECISION

LENGTH

SCALE

PSEUDO_COLUMN

Результирующий набор упорядочен по SCOPE.

odbc_statistics

(PHP 4)

odbc_statistics - запрашивает статистику таблицы.

Описание

resource odbc_statistics (resource connection_id, string qualifier, string owner, string table_name, int unique, int accuracy)

Получает статистику о таблице и её индексах. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

TABLE_QUALIFIER

TABLE_OWNER

TABLE_NAME

NON_UNIQUE

INDEX_QUALIFIER

INDEX_NAME

TYPE

SEQ_IN_INDEX

COLUMN_NAME

COLLATION

CARDINALITY

PAGES

FILTER_CONDITION

Результирующий набор упорядочен по NON_UNIQUE, TYPE, INDEX_QUALIFIER, INDEX_NAME и SEQ_IN_INDEX.

odbc_tableprivileges

(PHP 4)

odbc_tableprivileges - список таблиц и привилегий, ассоциированных с каждой таблицей.

Описание

int odbc_tableprivileges (resource connection_id [, string qualifier [, string owner [, string name]]])

Выдаёт список таблиц в запрошенном диапазоне и привилегий, ассоциированных с каждой таблицей. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

TABLE_QUALIFIER

TABLE_OWNER

TABLE_NAME

GRANTOR

GRANTEE

PRIVILEGE

IS_GRANTABLE

Результирующий набор упорядочен по TABLE_QUALIFIER, TABLE_OWNER и TABLE_NAME.

Аргументы owner и name принимают патэрны поиска ('%' для совпадения с 0 или более символов, '_' для совпадения с одиночным символом).

odbc_tables

(PHP 3>= 3.0.17, PHP 4)

odbc_tables - получает список имён таблиц, хранимых в специфическом источнике данных. Возвращает результирующий идентификатор, содержащий эту информацию.

Описание

int odbc_tables (resource connection_id [, string qualifier [, string owner [, string name [, string types]]]])

Выдаёт список всех таблиц в запрошенном диапазоне. Возвращает результирующий идентификатор ODBC, FALSE при неудаче.

Результирующий набор содержит следующие столбцы:

TABLE_QUALIFIER

TABLE_OWNER

TABLE_NAME

TABLE_TYPE

REMARKS

Результирующий набор упорядочен по TABLE_TYPE, TABLE_QUALIFIER, TABLE_OWNER и TABLE_NAME.

Аргументы owner и name принимаю патэрны поиска ('%' для совпадения с 0 или более символов, '_' для совпадения с одиночным символом).

Для поддержки квалификаторов/qualifiers, владельцев/owners и типов таблиц доступна следующая специальная семантика для qualifier, owner, name и table_type:

Если qualifier это один символ процентов (%) и owner и name это пустые строки, то результирующий набор содержит список правильных квалификаторов источника данных. (Все столбцы, кроме столбца TABLE_QUALIFIER, содержат NULLs.)

Если owner это один символ процентов (%) и qualifier и name это пустые строки, то результирующий набор содержит список правильных владельцев источника данных. (Все столбцы, кроме столбца TABLE_OWNER содержат NULLs.)

Если table_type это один символ процентов (%) и qualifier, owner и name это пустые строки, то результирующий набор содержит список правильных типов таблиц источника данных. (Все столбцы, кроме столбца TABLE_TYPE содержат NULLs.)

Если table_type это не пустая строка, он обязан содержать список разделённых запятыми значений интересующих типов; каждое значение может быть заключено в одинарные кавычки (') или быть без кавычек. Например, "'TABLE','VIEW'" или "TABLE, VIEW". Если источник данных не поддерживает специфицированный тип таблиц, odbc_tables() не возвращает никакого результата данного типа.

См. также odbc_tableprivileges() о запрашивании ассоциированных привилегий.

old_function

Оператор old_function позволяет объявлять функцию с использованием синтаксиса, идентичного PHP/FI2 (вы только обязаны заменить 'function' на 'old_function'.

Эту возможность использовать не рекомендуется, и она должна использоваться только PHP/FI2->PHP 3-конвертером.

Предупреждение!Функции, объявленные как old_function, не могут вызываться из внутреннего кода РНР. Помимо прочего это означает, что вы не можете использовать их в таких функциях, как usort(), array_walk() и register_shutdown_function(). Вы можете обойти это ограничение, написав функцию-оболочку (в нормальной форме PHP 3) для вызова old_function.

opendir

(PHP 3, PHP 4)

opendir - открывает дескриптор директории.

Описание

resource opendir (string path)

Возвращает дескриптор директории, используемый в последующих вызовах closedir(), readdir() и rewinddir().

Если path не является правильной директорией или не может быть открыт из-за ограничений доступа или ошибки файловой системы, opendir() возвращает FALSE и генерирует PHP-ошибку. Вы можете подавить вывод ошибок функции opendir(), присоединив '@' перед именем функции.

openlog

(PHP 3, PHP 4)

openlog - открывает соединение с системным логером.

Описание

int openlog (string ident, int option, int facility)

openlog() открывает соединение программы с системным логером. Строка ident добавляется к кадждому сообщению. Значения для option и facility даны ниже. Аргумент option используется для указания на то, что опции логина были использованы при генерации log-сообщения. Аргумент facility используется для специфицирования типа программы, выполнившей логинг сообщения. Это позволяет специфицировать (в syslog конфигурации вашей машины), как будут обрабатываться сообщения, приходящие из различных средств обслуживания. Использовать openlog() не обязательно. Она будет автоматически вызываться функцией syslog(), если необходимо; тогда ident будет по умолчанию FALSE.

Таблица 1. Опции openlog()
КонстантаОписаниеLOG_CONS если имеется ошибка при отправке данных в системный логер, записать непосредственно в системную консоль LOG_NDELAYнемедленно открыть соединение с системным логером LOG_ODELAY(по умолчанию) задержать открытие соединения, пока не будет выполнен логинг первого сообщения LOG_PERRORпечатать log-сообщение также в стандартную ошибку LOG_PIDвключить PID в каждое сообщение

Вы можете использовать одну или более этих опций. при использовании нескольких опций вам необходимо OR их, т.е., чтобы открыть соединение немедленно, записать в консоль и включить PID в каждое сообщение, вы используете: LOG_CONS | LOG_NDELAY | LOG_PID

Таблица 2. Средства обслуживания openlog()
Константа ОписаниеLOG_AUTHсообщения безопасности/авторизации (используйте вместо неё LOG_AUTHPRIV в системах, где эта константа определена)LOG_AUTHPRIV сообщения безопасности/авторизации (private)LOG_CRONдемон часов (cron и at) LOG_DAEMONдругие системные демоныLOG_KERNсообщения ядра LOG_LOCAL0 ... LOG_LOCAL7зарезервированы для локального использования LOG_LPRподсистема line printerLOG_MAILподсистема mail LOG_NEWSподсистема USENET newsLOG_SYSLOGсообщения, генерируемые syslogd внутренне LOG_USERобщие пользовательские сообщенияLOG_UUCP подсистема UUCP

См. также define_syslog_variables(), syslog() и closelog().

openssl_csr_export

(PHP 4 >= 4.2.0)

openssl_csr_export - экспортирует CSR в файл или переменную.

Описание

bool openssl_csr_export (resource csr, string out [, bool notext])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_csr_export_to_file

(PHP 4 >= 4.2.0)

openssl_csr_export_to_file - экспортирует CSR в файл или переменую.

Описание

bool openssl_csr_export_to_file (resource csr, string outfilename [, bool notext])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_csr_new

(PHP 4 >= 4.2.0)

openssl_csr_new - генерирует privkey и CSR.

Описание

bool openssl_csr_new (array dn, resource privkey [, array extraattribs [, array configargs]])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_csr_sign

(PHP 4 >= 4.2.0)

openssl_csr_sign - обозначает cert другим CERT.

Описание

resource openssl_csr_sign (mixed csr, mixed x509, mixed priv_key, long days)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_error_string

(PHP 4 >= 4.0.6)

openssl_error_string - возвращает openSSL сообщение об ошибке.

Описание

mixed openssl_error_string (void)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает строку сообщения об ошибке, FALSE, если больше нет возвращаемых сообщений об ошибке.

openssl_error_string() возвращает последнюю ошибку из библиотеки openSSL. Сообщения об ошибках стэкируются, поэтому эта функция должна вызваться неоднократно для сбора всей информации.

Параметры/return-тип этой функции могут измениться до её появления в релизе PHP.

openssl_free_key

(PHP 4 >= 4.0.4)

openssl_free_key - освобождает ресурс ключа.

Описание

void openssl_free_key (resource key_identifier)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

openssl_free_key() освобождает из памяти ключ, ассоциированный со специфицированным идентификатором key_identifier.

openssl_get_privatekey

(PHP 4 >= 4.0.4)

openssl_get_privatekey - готовит PEM-форматированный private ключ для использования.

Описание

resource openssl_get_privatekey (mixed key [, string passphrase])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает положительный идентификатор ресурса при успехе, FALSE при ошибке.

openssl_get_privatekey() разбирает PEM-форматированный private ключ key и готовит его для использования другими функциями. Необязательный параметр passphrase обязан использоваться, если специфицированный ключ зашифрован (защищён фразой-паролем).

openssl_get_publickey

(PHP 4 >= 4.0.4)

openssl_get_publickey - извлекает public ключ из сертификата и готовит его для использования.

Описание

resource openssl_get_publickey (mixed certificate)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает положительный идентификатор ресурса при успехе, FALSE при ошибке.

openssl_get_publickey() извлекает public ключ из X.509 сертификата certificate и готовит его для использования другими функциями.

openssl_open

(PHP 4 >= 4.0.4)

openssl_open - открывает пломбированные данные.

Описание

bool openssl_open (string sealed_data, string open_data, string env_key, mixed priv_key_id)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает TRUE при успехе, FALSE при неудаче. При успехе открытые данные возвращаются в open_data.

openssl_open() открывает (дешифрует) sealed_data с использованием private ключа, ассоциированного с идентификатором ключа priv_key_id, и ключ конверта/envelope env_key и заполняет open_data дешифрованными данными. Ключ envelope генерируется, когда данные пломбированы и могут использоваться только одним специфическим private ключом. См. дополнительно openssl_seal().

openssl_pkcs7_decrypt

(PHP 4 >= 4.0.6)

openssl_pkcs7_decrypt - дешифрует S/MIME-шифрованное сообщение.

Описание

bool openssl_pkcs7_decrypt (string infilename, string outfilename, mixed recipcert, mixed recipkey)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Дешифрует S/MIME-кодированное сообщение, содержащееся в файле infilename, с использованием сертификата и его ассоциированного private ключа, специфицированных параметрами recipcert и recipkey.

Дешифрованное сообщение выводится в файл outfilename.

Пример 1. openssl_pkcs7_decrypt()
// предполагается, что $cert и $key содержат ваш персональный сертификат/private
// key и что вы являетесь получателем/recipient S/MIME-сообщения
$infilename = "encrypted.msg"; // этот файл содержит ваше шифрованное сообщение
$outfilename = "decrypted.msg"; // убедитесь, что вы можете записывать в этот файл
if (openssl_pkcs7_decrypt($infilename, $outfilename, $cert, $key))
echo "decrypted!";
else
echo "failed to decrypt!";

Примечание: эта функция была введена в 4.0.6.

openssl_pkcs7_encrypt

(PHP 4 >= 4.0.6)

openssl_pkcs7_encrypt - шифрует S/MIME-сообщение.

Описание

bool openssl_pkcs7_encrypt (string infile, string outfile, mixed recipcerts, array headers [, long flags])

openssl_pkcs7_sign

(PHP 4 >= 4.0.6)

openssl_pkcs7_sign - подписывает сообщение S/MIME.

Описание

bool openssl_pkcs7_sign (string infilename, string outfilename, mixed signcert, mixed privkey, array headers [, long flags [, string extracertsfilename]])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

openssl_pkcs7_sign() принимает содержимое файла infilename и подписывает его с использованием сертификата и совпадающего private-ключа, специфицированных параметрами signcert и privkey.

headers это массив шапок/headers, которые будут присоединяться впереди данных после их подписывания (см. в openssl_pkcs7_encrypt() о формате этого параметра).

flags можно использовать для изменения вывода - см. PKCS7-константы; если не специфицирован, по умолчанию будет PKCS7_DETACHED.

extracerts специфицирует имя файла, содержащего узел дополнительных сертификатов для включения в подпись, что может использоваться, например, для того, чтобы принимающий мог проверить сертификат, используемый вами.

openssl_pkcs7_verify

(PHP 4 >= 4.0.6)

openssl_pkcs7_verify - проверяет подпись подписанного S/MIME-сообщения.

Описание

bool openssl_pkcs7_verify (string filename, int flags [, string outfilename [, array cainfo [, string extracerts]]])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

openssl_pkcs7_verify() читает S/MIME-сообщение, содержащееся в файле filename, и проверяет цифровую подпись. Возвращает TRUE, если подпись проверена, FALSE, если она некорректна (сообщение было изменено, или сертификат подписи неправильный), или -1 при ошибке.

flags можно использовать для влияния на проверку подписи - см. PKCS7-константы.

Если outfilename специфицирован, он должен быть строкой, содержащей имя файла, в который сертификат подписавшего сообщение будет сохранён в формате PEM.

Если cainfo специфицирован, он должен содержать информацию о доверенных CA-сертификатах, используемых в ходе проверки - см. в разделе проверка сертификата об этом параметре.

Если extracerts специфицирован, он является именем файла, содержащего узел сертификатов, используемых в недоверенных CAs.

Примечание: эта функция была добавлена в 4.0.6.

openssl_pkey_export

(PHP 4 >= 4.2.0)

openssl_pkey_export - получает представление ключа для экспорта в строку или файл.

Описание

bool openssl_pkey_export (mixed key, mixed out [, string passphrase [, array config_args]])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_pkey_export_to_file

(PHP 4 >= 4.2.0)

openssl_pkey_export_to_file - получает представление ключа, экспортируемое в файл.

Описание

bool openssl_pkey_export_to_file (mixed key, string outfilename [, string passphrase [, array config_args]])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение! Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_pkey_new

(PHP 4 >= 4.2.0)

openssl_pkey_new - генерирует новый private ключ.

Описание

resource openssl_pkey_new ([array configargs])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_private_decrypt

(PHP 4 >= 4.0.6)

openssl_private_decrypt - дешифрует данные с private ключом.

Описание

bool openssl_private_decrypt (string data, string crypted, mixed key [, int padding])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_private_encrypt

(PHP 4 >= 4.0.6)

openssl_private_encrypt - шифрует данные с private ключом.

Описание

bool openssl_private_encrypt (string data, string crypted, mixed key [, int padding])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_public_decrypt

(PHP 4 >= 4.0.6)

openssl_public_decrypt - дешифрует данные с public ключом.

Описание

bool openssl_public_decrypt (string data, string crypted, resource key [, int padding])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_public_encrypt

(PHP 4 >= 4.0.6)

openssl_public_encrypt - шифрует данные с public ключом.

Описание

bool openssl_public_encrypt (string data, string crypted, mixed key [, int padding])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_seal

(PHP 4 >= 4.0.4)

openssl_seal - пломбирует (шифрует) данные.

Описание

int openssl_seal (string data, string sealed_data, array env_keys, array pub_key_ids)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает длину пломбированных данных при успехе, FALSE при ошибке. При успехе возвращаются пломбированные данные в параметре sealed_data, и envelope-ключи - в env_keys.

openssl_seal() пломбирует (шифрует) data с помощью RC4 случайно генерируемым секретным ключом. Этот ключ шифруется с каждым public ключом, ассоциированным с идентификатором в pub_key_ids, и каждый шифрованный ключ возвращается в env_keys. Это значит, что можно пломбировать данные для нескольких принимающих (в предположении, что пломбировщик имеет их public ключи). Каждый принимающий обязан получить пломбированные данные и envelope ключ, который был зашифрован с public ключом принимающего.

openssl_sign

(PHP 4 >= 4.0.4)

openssl_sign - генерирует подпись.

Описание

bool openssl_sign (string data, string signature, mixed priv_key_id)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает TRUE при успехе, FALSE при неудаче. При успехе подпись возвращается в signature.

openssl_sign() вычисляет подпись для специфицированных данных data с использованием SHA1 для хэширования, за которым следует шифрование с использованием private ключа, ассоциированного с priv_key_id. Обратите внимание, что сами данные не шифруются.

openssl_verify

(PHP 4 >= 4.0.4)

openssl_verify - проверяет подпись.

Описание

int openssl_verify (string data, string signature, mixed pub_key_id)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает 1, если подпись корректна, 0, если некорректна, -1 при ошибке.

openssl_verify() проверяет, что signature корректна для специфицированных данных data с помощью public ключа, ассоциированного с pub_key_id. Это обязан быть public ключ, соответствующий private ключу, используемому для подписи.

openssl_x509_check_private_key

(PHP 4 >= 4.2.0)

openssl_x509_check_private_key - проверяет, соответствует ли private ключ CERT.

Описание

bool openssl_x509_check_private_key (mixed cert, mixed key)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_x509_checkpurpose

(PHP 4 >= 4.0.6)

openssl_x509_checkpurpose - проверяет, может ли сертификат использоваться для определённой цели.

Описание

bool openssl_x509_checkpurpose (mixed x509cert, int purpose, array cainfo [, string untrustedfile])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает TRUE, если сертификат может использоваться для определённой цели, FALSE, если не может, -1 при ошибке.

openssl_x509_checkpurpose() проверяет, может ли сертификат x509cert использоваться для цели purpose.

cainfo должен быть массивом доверенных CA файлов/директорий, как описано в Проверке сертификата.

untrustedfile, если специфицирован, является именем PEM-кодированного файла, содержащего сертификат, который (файл) может использоваться для проверки этого сертификата, хотя никакой доверенности/trust не помещается в сертификат, поступающий из этого файла.

Таблица 1. Цели openssl_x509_checkpurpose()
КонстантаОписание 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Может ли сертификат использоваться для подписывания списка certificate revocation list (CRL)? X509_PURPOSE_ANYМожет ли сертификат использоваться для любых других/всех целей?

Эти опции не являются битовыми полями - вы можете специфицировать только одну из них!

Примечание: эта функция была добавлена в 4.0.6.

openssl_x509_export

(PHP 4 >= 4.2.0)

openssl_x509_export - экспортирует CERT в файл или в var.

Описание

bool openssl_x509_export (mixed x509, string outfilename [, bool notext])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_x509_export_to_file

(PHP 4 >= 4.2.0)

openssl_x509_export_to_file - экспортирует CERT в файл или в var.

Описание

bool openssl_x509_export_to_file (mixed x509, string outfilename [, bool notext])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. Предупреждение!Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

openssl_x509_free

(PHP 4 >= 4.0.6)

openssl_x509_free - освобождает ресурс сертификата.

Описание

void openssl_x509_free (resource x509cert)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

openssl_x509_free() освобождает сертификат, ассоциированный со специфицированным ресурсом x509cert из памяти.

Примечание: эта функция была добавлена в 4.0.6.

openssl_x509_parse

(PHP 4 >= 4.0.6)

openssl_x509_parse - разбирает сертификат X509 и возвращает информацию как массив.

Описание

array openssl_x509_parse (mixed x509cert [, bool shortnames])

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

openssl_x509_parse() возвращает информацию о предоставляемом x509cert, включая такие поля, как имя субъекта, имя издателя, цели, верные даты from и to и т.д.
shortnames
управляет тем, как эти данные индексируются в массиве - если shortnames TRUE (по умолчанию), то поля будут индексироваться в формой сокращённого имени, иначе будет использоваться форма длинного имени - например: CN это shortname-форма для commonName.

Структура возвращаемых данных пока ещё не задокументирована, поэтому может измениться.

Примечание: эта функция была введена в 4.0.6.

openssl_x509_read

(PHP 4 >= 4.0.6)

openssl_x509_read - разбирает сертификат X.509 и возвращает идентификатор ресурса для него.

Описание

resource openssl_x509_read (mixed x509certdata)

Предупреждение!Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

openssl_x509_read() разбирает сертификат x509certdata и возвращает идентификатор ресурса для него.

Примечание: эта функция была введена в 4.0.6.