Tôi có một tập tin mà require() 'sa namespace, như vậy:PHP: Namespaces trong một tập tin duy nhất với một namespace toàn cục
<?php
require_once('Beer.php'); // This file contains the Beer namespace
$foo = new Beer\Carlsburg();
?>
Tôi muốn đưa không gian tên Bia trực tiếp trong cùng một tập tin, như ví dụ này (không hoạt động):
<?php
namespace Beer {
class Carlsburg {}
}
$foo = new Beer\Carlsburg();
?>
Tuy nhiên, thông dịch viên PHP phàn nàn rằng No code may exist outside of namespace
. Do đó, tôi có thể bọc tờ khai $foo
trong một không gian tên, nhưng sau đó tôi cũng phải bọc Bia trong không gian tên đó để truy cập nó! Dưới đây là một ví dụ làm việc của những gì tôi đang cố gắng để tránh:
<?php
namespace Main\Beer {
class Carlsburg {}
}
namespace Main {
$foo = new Beer\Carlsburg();
}
?>
Có cách nào để bao gồm các mã cho Beer
namespace trong file, nhưng không quấn khai $foo
trong không gian tên riêng của mình (để lại nó trong không gian tên chung)?
Cảm ơn.
Bạn nên có Heineken như namespace! – marko