The MongoBinData class

(PECL mongo >= 0.8.1)

Warning

This extension that defines this class is deprecated. Instead, the MongoDB extension should be used. Alternatives to this class include:

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

MongoBinData {
/* Constants */
const int GENERIC = 0 ;
const int FUNC = 1 ;
const int BYTE_ARRAY = 2 ;
const int UUID = 3 ;
const int UUID_RFC4122 = 4 ;
const int MD5 = 5 ;
const int CUSTOM = 128 ;
/* Fields */
public string $bin ;
public int $type = 2 ;
/* Methods */
public __construct ( string $data [, int $type = 0 ] )
public __toString ( void ) : string
}

Predefined Constants

Binary Data Types

MongoBinData::GENERIC
Generic binary data.
MongoBinData::FUNC
Function.
MongoBinData::BYTE_ARRAY
Generic binary data (deprecated in favor of MongoBinData::GENERIC).
MongoBinData::UUID
Universally unique identifier (deprecated in favor of MongoBinData::UUID_RFC4122).
MongoBinData::UUID_RFC4122
Universally unique identifier (according to » RFC 4122).
MongoBinData::MD5
MD5.
MongoBinData::CUSTOM
User-defined type.

Changelog

Version Description
1.5.0 Added MongoBinData::GENERIC and MongoBinData::UUID_RFC4122 constants.

Table of Contents