บทนำ
PHP สามารถโต้ตอบกับฐานข้อมูล MongoDB ผ่าน database extensions สำหรับ PHP เวอร์ชันเก่า mongo driver สามารถติดตั้งจาก PECL ตอนนี้ถูกแทนที่ด้วย driver mongodb ทั้งสอง driver ติดตั้งได้ด้วย precompiled binaries สำหรับ Linux/Windows/MacOS หรือติดตั้งด้วยตนเองจาก source tarball บน github ในทั้งสองกรณี mongo หรือ mongodb extension ควรเปิดใช้งานใน php.ini
PHP MongoDB extension ให้ Stream Context Support โดยใช้ mongodb context Context options ที่เกี่ยวข้องมีดังนี้
Options
log_cmd_insert ( array $server , array $document , array $writeOptions , array $protocolOptions )
เป็น callable function ใช้โดย context option log_cmd_insert เมื่อ insert document
log_cmd_delete ( array $server , array $writeOptions , array $deleteOptions , array $protocolOptions )
เป็น callback function ใช้โดย log_cmd_delete context option เมื่อ delete document
log_cmd_update ( array $server , array $writeOptions , array $updateOptions , array $protocolOptions )
ฟังก์ชันนี้ใช้โดย log_cmd_update context option เมื่อ update document
log_write_batch ( array $server , array $writeOptions , array $batch , array $protocolOptions )
ฟังก์ชันนี้ใช้โดย log_write_batch context option เมื่อ execute batch operation
log_reply ( array $server , array $messageHeaders , array $operationHeaders )
Callback function นี้ใช้เมื่ออ่าน MongoDB reply
log_getmore ( array $server , array $info )
เมื่อ execute GET_MORE operation callable function นี้ใช้โดย log_getmore context option
log_killcursor ( array $server , array $info )
Callback เมื่อ Execute KILLCURSOR operations
$server array มีข้อมูลพื้นฐานของพารามิเตอร์ต่อไปนี้
hash - server hash, example: localhost:27017;-;X;56052
type - Node type (primary/secondary/mongos/arbiter) - 2
max_bson_size - Maximum BSON Size over the wire ที่ node นี้ยอมรับ - 16777216
max_message_size - Maximum Message Size over the wire ที่ node นี้ยอมรับ - 48000000
request_id - Request identifier สำหรับ message นี้ - 42