# MongoId::__construct

(PECL mongo >= 0.8.0)

MongoId::__construct — Creates a new id

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

> - MongoDB\BSON\ObjectId::__construct()

### Description

public MongoId::__construct ([ string|MongoId `$id` = `NULL` ] )

### Parameters

`id`

  A string (must be 24 hexadecimal characters) or a MongoId instance.

### Return Values

Returns a new id.

### Changelog

Version | Description
--- | ---
1.4.0 | An exception is thrown when passed invalid string

### Examples

Example #1 MongoId::__construct() example

This example shows how to create a new id. This is seldom necessary, as the driver adds an id to arrays automatically before storing them in the database.

`<?php
$id1 = new MongoId();
echo "$id1\n";
$id2 = new MongoId();
echo "$id2\n";
?>`

The above example will output something similar to:

    49a7011a05c677b9a916612a
    49a702d5450046d3d515d10d

Example #2 Parameter example

This example shows how to use a string parameter to initialize a MongoId with a given value.

`<?php
$id1 = new MongoId();
// create a new id from $id1
$id2 = new MongoId("$id1");
// show that $id1 and $id2 have the same hexidecimal value
var_dump($id1 == $id2);
?>`

The above example will output something similar to:

    bool(true)

### See Also

- MongoId::__toString() - Returns a hexidecimal representation of this id
- MongoId::isvalid() - Check if a value is a valid ObjectId