PHP可以通过数据库扩展与MongoDB数据库进行交互。对于旧版本的PHP,可以从PECL安装mongo驱动程序。现在已由mongodb驱动程序代替。可以使用针对Linux / Windows / MacOS操作系统的预编译二进制文件来安装这两种驱动程序。或者,可以从github上的源tarball进行手动安装。无论哪种情况,都应该在 php.ini设置中启用mongo或mongodb扩展。
PHP MongoDB扩展使用mongodb上下文提供了流上下文支持。相关上下文选项如下
log_cmd_insert(数组$server,数组$document,数组$writeOptions,数组$protocolOptions)
这是一个可调用函数,在插入文档时由log_cmd_insert上下文选项使用
log_cmd_delete(数组$server,数组$writeOptions,数组$deleteOptions,数组$protocolOptions)
这是一个回调函数,在删除文档时由log_cmd_delete上下文选项使用
log_cmd_update(数组$server,数组$writeOptions,数组$updateOptions,数组$protocolOptions)
更新文档时,log_cmd_update上下文选项使用此功能
log_write_batch(数组$server,数组$writeOptions,数组$batch,数组$protocolOptions)
执行批处理操作时, log_write_batch上下文选项使用此函数。
log_reply(数组$server,数组$messageHeaders,数组$operationHeaders)
读取MongoDB答复时使用此回调函数
log_getmore(数组$server,数组$info)
在执行GET_MORE操作时,log_getmore上下文选项使用此可调用函数
log_killcursor(数组$server,数组$info)
执行KILLCURSOR操作时的回调
$server数组包含以下参数的基本信息
散列-服务器散列,例如:本地主机:27017; - ; X; 56052
类型-节点类型(主要/次要/蒙哥斯/仲裁者)-2
max_bson_size-该节点接受的导线上的最大BSON大小-16777216
max_message_size-该节点接受的电线上的最大消息大小-48000000
request_id-该消息的请求标识符-42