use level1\level2\level3;
Quelqu'un peut-il expliquer avec une démo simple?Comment implémenter un espace de noms imbriqué en PHP?
use level1\level2\level3;
Quelqu'un peut-il expliquer avec une démo simple?Comment implémenter un espace de noms imbriqué en PHP?
Pour dissiper toute confusion quant à une utilisation différente de la syntaxe, les espaces de noms ne supportent que deux syntaxes, soit placé entre crochets ou simple combinaison les deux fonctionneront. Je suggère que si vous utilisez l'un sur l'autre, soyez cohérent.
<?php
namespace my\stuff\nested { // <- bracketed syntax
class foo {}
}
?>
Il crée une classe foo
à l'intérieur de l'espace de noms nested
avec syntaxe entre crochets ({}
), il est équivalent à
<?php
namespace my\stuff { // bracketed syntax but with a nested look
namespace nested {
class foo {}
}
}
?>
Vous pouvez également utiliser les espaces de noms imbriqués avec syntaxe simple combinaison (;
)
<?php
namespace mine;
use ultra\long\ns\name; // <- simple-combination syntax
$a = name\CONSTANT;
name\func();
?>
Semble '{}' après l'espace de noms n'est pas nécessaire? – user198729
Non, ce n'est pas nécessaire. Il montre comment vous pouvez créer une classe à l'intérieur d'un espace de nom, d'où le '{}' –
Donc la seule fonctionnalité de 'use' est un raccourci? – user198729