PHP Unconference Europe 2015

Unter-Namespaces deklarieren

(PHP 5 >= 5.3.0)

Ähnlich wie Verzeichnisse und Dateien hat ein PHP-Namespace auch die Möglichkeit, eine Hierarchie von Namespacenamen zu beinhalten. Ein Namespace kann also mit Unterebenen definiert werden:

Beispiel #1 Einen einzelnen Namespace mit einer Hierarchie deklarieren

<?php
namespace MyProject\Sub\Level;

const 
CONNECT_OK 1;
class 
Connection /* ... */ }
function 
connect() { /* ... */  }

?>
Das obige Beispiel erzeugt eine Konstante MyProject\Sub\Level\CONNECT_OK, die Klasse MyProject\Sub\Level\Connection und die Funktion MyProject\Sub\Level\connect.

add a note add a note

User Contributed Notes 3 notes

up
18
leaksin [ at ] gmail [ dot ] com
1 year ago
Never use slashes and dot in namespace declaration.

wrong formats:

<?php

namespace first\second.w;

?>

<?php

namespace first/second;

?>
up
2
do dot not dot reply at foxmail dot com
1 month ago
treat sub-namespaces as different namespace

a.php:
<?php namespace ABC;
const
'__DOMAIN__' = 'example.com';
?>

b.php
<?php namespace ABC\SUBLEVEL;
require
'a.php';
echo
__DOMAIN__; //Notice: Use of undefined constant __DOMAIN__
up
-18
steve dot pye at gmail dot com
1 month ago
Wait a minute. So the document says to declare it like:

namespace Something\SomethingElse;

and you're saying "never do that"? what the what?
To Top