PEAR_Error|array PEAR_ErrorStack::push (
integer
$code
,
string
$level = 'error'
,
array
$params = array()
,
string
$msg
= = false
,
array
$repackage
= = false
,
array
$backtrace
= = false
)
Depuis PEAR 1.3.2, PEAR_ErrorStack n'instancie et ne retourne plus une exception en PHP5. Le code s'appuyant sur ce comportement ne fonctionnera plus.
Si le générateur de message existe, il sera appelé avec 2 paramètres.
l'objet représentant la pile d'erreurs courante
un tableau qui est du même format qu'une erreur. Les indices disponibles sont 'code', 'package', 'time', 'params', 'level', and 'context'
Code erreur spécifique au paquet
Niveau d'erreur. Il ne sera pas traduit.
tableau associatif pour les paramètres de l'erreur
Message d'erreur ou seulement une portion si le message est en cours de génération.
Si cette erreur rempaquète une erreur envoyée par un autre paquet, placez le tableau retourné par la fonction pop() dans ce paramètre.
Paramètre protégé : utilisez ce paramètre pour passer la fonction http://www.php.net/manual-lookup.php?pattern=debug_backtrace qui devra être utilisé pour retrouver le contexte de l'erreur.
lançe, si le mode de compatibilité est actif, une PEAR_Error. Si l'exception existe, alors 1 sera retourné permettant le code suivant :
<?php
1 throw ($stack-><link linkend="core.pear.pear-errorstack.push">push</link>(MY_ERROR_CODE, 'error', array('username' => 'grob')));
?>
La propriété errorData de la classe de l'exception sera définit par le tableau qui devrait être retourné. Si un PEAR_Error est retourné, la propriété userinfo est définie par ce tableau.
Cependant, un tableau est retourné dans ce format :
<?php
array(
'code' => $code,
'params' => $params,
'package' => $this->_package,
'level' => $level,
'time' => <ulink url="&url.php.lookup;time">time</ulink>(),
'context' => $context,
'message' => $msg,
//['repackage' => $err] tableau de l'erreur rempaquetée
);
?>
No exceptions thrown.
This function can not be called statically.