## Les objets

### Initialisation des objets

Pour créer un nouvel object, utiliser le mot clé `new` afin d'instancier une classe :

Exemple #1 Construction d'objet

    <?php
    class foo
    {
        function do_foo()
        {
            echo "Doing foo.";
        }
    }

    $bar = new foo;
    $bar->do_foo();
    ?>

Pour une discussion complète, voir le chapitre sur les classes et les objets.

### Conversion en un objet

Si un objet est converti en un objet, il ne sera pas modifié. Si une valeur de n'importe quel type est convertie en un objet, une nouvelle instance de la classe interne stdClass sera créée. Si la valeur est `null`, la nouvelle instance sera vide. Un array se convertit en object avec les propriétés nommées au regard des clés avec leurs valeurs correspondantes. Il est à noter que dans ce cas, avant PHP 7.2.0 les clés numériques ont été inaccessibles à moins d'être itérées.

Exemple #2 Conversion en un objet

    <?php
    $obj = (object) array('1' => 'foo');
    var_dump(isset($obj->{'1'})); // affiche 'bool(true)'

    // Déprécié depuis PHP 8.1
    var_dump(key($obj)); // affiche 'string(1) "1"'
    ?>

Pour toute autre valeur, un membre appelé `scalar` contiendra la valeur.

Exemple #3 Conversion `(object)`

    <?php
    $obj = (object) 'ciao';
    echo $obj->scalar;  // Affiche : 'ciao'
    ?>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open