Tương đương với câu lệnh using Name.Space;
của C# để làm cho tất cả các lớp của không gian tên đó có sẵn trong tệp hiện tại là gì? Điều này thậm chí có thể với PHP?Không gian tên PHP: tương đương với C# bằng cách sử dụng
Những gì tôi muốn (nhưng không hoạt động):
<?php
# myclass.php
namespace Namespace;
class myclass {
}
?>
<?php
# main.php
include 'myclass.php'
use Namespace;
new myclass();
?>
Có thể PHP chỉ tự động tải một lớp nếu nó không được tìm thấy trong tất cả các không gian tên hiện có (và đã nhập). Nếu tôi nhập khẩu một không gian tên mỗi lớp đã được xác định đúng (bao gồm) với không gian tên đó nên được gọi. – knittl
Điều này sẽ dẫn đến một số lượng lớn các cuộc gọi tự động tải tại phải gọi trình nạp tự động cho mỗi không gian tên được nhập cho mỗi tên lớp được tham chiếu. Giả sử một chức năng autoload là tương đối đắt tiền (nhìn vào hệ thống tập tin) điều này là khá đáng chú ý. – johannes
Chưa kể, tôi có thể muốn tạo lớp chứa tệp _during_ script execution và sau đó bao gồm chúng để sử dụng (một trường hợp không chắc và có lẽ không rất khôn ngoan, nhưng PHP có thể làm điều đó) – Mchl