Note MongoBinData::CUSTOM has value 0x80, not 0xf0
The MongoBinData class
(PECL mongo >= 0.8.1)
Introduction
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.
Class synopsis
Predefined Constants
Binary Data Types
-
MongoBinData::FUNC0x01 - Function.
-
MongoBinData::BYTE_ARRAY0x02 - Array of bytes.
-
MongoBinData::UUID0x03 - Universally unique identifier.
-
MongoBinData::MD50x05 - MD5.
-
MongoBinData::CUSTOM0x80 - User-defined type.
Table of Contents
- MongoBinData::__construct — Creates a new binary data object.
- MongoBinData::__toString — The string representation of this binary data object.
