Exception PHP7

Les exceptions PHP 7 sont utilisées pour la compatibilité ascendante et l'amélioration de l'ancienne fonction assert(). Il permet des assertions sans coût dans les environnements de production et offre la possibilité de générer des exceptions et des erreurs personnalisées.

L'ancienne version de l'API continuera d'être maintenue à des fins de compatibilité. assert() est désormais une construction de langage qui permet au premier argument d'être une expression, pas seulement une chaîne à évaluer ou un booléen. à tester.


configuration assert()

QQ截图20161116112609.png

paramètres

  • assertion
  • Affirmation. En PHP 5, une chaîne pour l'exécution ou un booléen pour les tests. En PHP 7, il peut s'agir d'une expression qui renvoie n'importe quelle valeur, et le résultat sera utilisé pour indiquer si l'assertion a réussi.

  • description
  • Si assertion échoue, la description de l'option sera incluse dans le message d'échec.

  • exception
  • En PHP 7, le deuxième paramètre peut être un objet Throwable au lieu d'une chaîne de caractères qui être lancé si l'assertion échoue et que assert.exception est activé.

Instance

Définissez zend.assertions sur 0 :

Instance

<?php
ini_set('zend.assertions', 0);

assert(true == false);
echo 'Hi!';
?>

Le programme ci-dessus est exécuté Le résultat de sortie est :

Hi!

Définissez zend.assertions sur 1 et assert.exception sur 1 :

Instance

<?php
ini_set('zend.assertions', 1);
ini_set('assert.exception', 1);

assert(true == false);
echo 'Hi!';
?>

L'exécution du programme ci-dessus sortie Le résultat est :

Fatal error: Uncaught AssertionError: assert(true == false) in -:2
Stack trace:
#0 -(2): assert(false, 'assert(true == ...')
#1 {main}
  thrown in - on line 2
Formation continue
||
<?php ini_set('zend.assertions', 0); assert(true == false); echo 'Hi!'; ?>
soumettreRéinitialiser le code
  • Recommandations de cours
  • Téléchargement du didacticiel