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 16MB. For data that is larger than this (movies, music, Henry Kissinger's autobiography), use MongoGridFS. For data that is smaller than 16MB, you may find it easier to embed it within 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"), MongoBinData::GENERIC),
);
$users->save($profile);
?>
This class contains a type field, which currently gives
no additional functionality in the PHP driver or the database. There are
seven predefined types, which are defined as class constants below. For
backwards compatibility, the PHP driver uses
MongoBinData::BYTE_ARRAY
as the default; however, this
may change to MongoBinData::GENERIC
in the future.
Users are encouraged to specify a type in
MongoBinData::__construct().
Class synopsis
Predefined Constants
Binary Data Types
MongoBinData::GENERIC
-
0x00
- Generic binary data.
MongoBinData::FUNC
-
0x01
- Function.
MongoBinData::BYTE_ARRAY
-
0x02
-
Generic binary data (deprecated in favor of
MongoBinData::GENERIC
). MongoBinData::UUID
-
0x03
-
Universally unique identifier (deprecated in favor of
MongoBinData::UUID_RFC4122
). MongoBinData::UUID_RFC4122
-
0x04
- Universally unique identifier (according to » RFC 4122).
MongoBinData::MD5
-
0x05
- MD5.
MongoBinData::CUSTOM
-
0x80
- User-defined type.
Changelog
Version | Description |
---|---|
1.5.0 |
Added MongoBinData::GENERIC and
MongoBinData::UUID_RFC4122 constants.
|
Table of Contents
- MongoBinData::__construct — Creates a new binary data object.
- MongoBinData::__toString — The string representation of this binary data object.
Коментарии
Note MongoBinData::CUSTOM has value 0x80, not 0xf0