(PHP 5 >= 5.1.3, PHP 7, PHP 8)
ReflectionClass::newInstanceArgs — Créer une nouvelle instance en utilisant les arguments fournis
Crée une nouvelle instance de la classe en utilisant les arguments fournis pour les passer au constructeur.
argsLes paramètres à passer au constructeur de la classe, sous forme de tableau.
Si toutes les clés de args sont numériques, les clés sont
ignorées et chaque élément est passé au constructeur comme argument positionnel,
dans l'ordre.
Si certaines clés de args sont des chaînes, ces éléments
sont passés au constructeur comme arguments nommés, avec le nom donné par la clé.
Une Error est levée si une clé numérique de
args apparaît après une clé chaîne, ou si une clé chaîne
ne correspond au nom d'aucun paramètre du constructeur.
Retourne une nouvelle instance de la classe, ou null en cas d'échec.
Une ReflectionException si le constructeur n'est pas public.
Une ReflectionException si la classe n'a pas de constructeur
et que le paramètre args contient au moins une donnée.
| Version | Description |
|---|---|
| 8.0.0 |
Les clés de args sont désormais interprétées
comme les noms des paramètres, au lieu d'être silencieusement ignorées.
|
Exemple #1 Utilisation basique de ReflectionClass::newInstanceArgs()
<?php
$class = new ReflectionClass('ReflectionFunction');
$instance = $class->newInstanceArgs(array('substr'));
var_dump($instance);
?>L'exemple ci-dessus va afficher :
object(ReflectionFunction)#2 (1) {
["name"]=>
string(6) "substr"
}