Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Exceptions à strict_types

<?php declare(strict_types = 1);

class x {
  function __toString() : string {
    return "abc";
  }
}

$x = new x;
print $x . " and $x
";

print $x;
echo $x;
echo PHP_EOL;

print implode(', ', [$x, $x]);
print implode($x, [1, 2]);

?>

strict_types ne s’applique pas aux opérateurs PHP, seulement aux structures typées.

Ici, la concaténation et l’interpolation appellent toutes deux __toString(), mais pas foo().

Comme vous pouvez le voir, print() et echo() sont également sûrs, tandis que implode() ne l’est pas : en réalité, il n’est pas sûr pour le premier argument, mais reste acceptable avec les éléments du tableau en second argument.

See Also

PHP Features

Last updated: 11 October 2026