(PECL mongo >= 0.8.1)
An object that can be used to store or retrieve binary data from the database.
The maximum size of a single object that can be inserted into the database is 4Mb. For data that is larger than this (movies, music, Henry Kissinger's autobiography), use MongoGridFS. For data that is smaller than 4Mb, it's probably be easier to just embed it into the document using MongoBinData.
For example, to embed an image in a document, one could write:
<?php
$profile = array("username" => "foobity",
"pic" => new MongoBinData(file_get_contents("gravatar.jpg"))
);
$users->save($profile);
?>
This class contains a type field, which currently gives no additional functionality in the driver or the database. There are five predefined types (which are the class constants listed below), and the user can create their own (at the risk of the BSON spec catching up with them). By default, the PHP driver always uses type 2: a byte array.
MongoBinData::FUNC
0x01
MongoBinData::BYTE_ARRAY
0x02
MongoBinData::UUID
0x03
MongoBinData::MD5
0x05
MongoBinData::CUSTOM
0x80