ReflectionClass::newInstanceArgs
PHP Manual
PHP Manual»ReflectionClass»ReflectionClass::newInstanceArgs

ReflectionClass::newInstanceArgs

(PHP 5 >= 5.1.3, PHP 7, PHP 8)

ReflectionClass::newInstanceArgs — Créer une nouvelle instance en utilisant les arguments fournis

Description

public function ReflectionClass::newInstanceArgs(array $args = []): ?object

Crée une nouvelle instance de la classe en utilisant les arguments fournis pour les passer au constructeur.

Liste de paramètres

args

Les 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.

Valeurs de retour

Retourne une nouvelle instance de la classe, ou null en cas d'échec.

Erreurs / Exceptions

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.

Historique

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.

Exemples

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"
}

Voir aussi

To Top