Le problème de l'utilisation d'une exception pour signaler un état introuvable dans l'espace de noms PHP vous sera expliqué en détail avec des exemples spécifiques.

亚连
Libérer: 2023-03-26 11:44:01
original
2546 Les gens l'ont consulté

Lorsqu'un fichier PHP déclare un espace de noms, lors de l'utilisation d'une classe dans ce fichier, vous devez spécifier dans quel espace de noms elle se trouve, sinon une erreur sera signalée car la classe est introuvable dans l'espace actuel, et la classe principale PHP introuvable dans l'espace actuel. Il y aura ce problème, exemple :

namespace TestExc;
try {    
throw new Exception('throw exception');
} 
catch(Exception $ex) 
{    
echo $ex->getMessage();
}1234567
Copier après la connexion

Exécutez le code ci-dessus, et l'erreur sera signalée :

PHP Fatal error:  Class 'TestExc\Exception' not found in /private/var/folders/sr/1sh63qr542x9h61w4t7wrk200000gn/T/CodeRunner/Untitled.php on line 61
Copier après la connexion

Vous pouvez également voir du rapport d'erreur que bien que Exception soit une classe principale de PHP, le programme ne fera que Il existe deux solutions pour trouver la classe Exception dans l'espace actuel
1 Déclarer une exception en utilisant l'espace global

use \Exception;
Copier après la connexion

Quand. en utilisant Exception, déclarez-le comme utilisant l'espace global

namespace TestExc;
try {    
throw new \Exception('throw exception');
} catch(\Exception $ex) {    
echo $ex->getMessage();
}123456
Copier après la connexion

Connaissances connexes :

Si aucun espace de noms n'est défini, toutes les classes et fonctions sont définies dans l'espace global, tout comme avant que PHP n'introduise le concept d’espace de noms. Le préfixe d'un nom indique que le nom se trouve dans l'espace global, même s'il se trouve dans un autre espace de noms.

Pour les fonctions et constantes, si la fonction ou la constante n'existe pas dans l'espace de noms actuel, PHP reviendra à l'utilisation de la fonction ou de la constante dans l'espace global.

Voici les questions que j'ai compilées pour vous sur les erreurs d'espace de noms PHP. J'espère que cela vous sera utile à l'avenir.

Articles connexes :

À propos de l'espace de noms PHP (combiné avec des exemples de code, simples et faciles à comprendre)

Nommage PHP Espace (réponse détaillée combinée avec le code)

Introduction détaillée à la portée en php combinée avec le code

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!