Quy ước không gian / thư mục.
Các lớp nên được lưu trữ trong các thư mục theo không gian tên của chúng.
Nói chung, bạn sẽ tạo một thư mục src / trong thư mục gốc của mình, ngồi cùng cấp với nhà cung cấp / và thêm các dự án của bạn vào đó. Dưới đây là một ví dụ về cấu trúc thư mục:
.
+-- src
|
+-- Book
| +-- History
| | +-- UnitedStates.php - namespace Book\History;
+-- Vehicle
| +-- Air
| | +-- Wings
| | | +-- Airplane.php - namespace Vehicle\Air\Wings;
| +-- Road
| | +-- Car.php - namespace Vehicle\Road;
+-- tests
+-- test.php
+-- vendor
Sự khác biệt giữa psr-0 và psr-4
ps-0
Nó bị phản đối Nhìn vào vendor/composer/autoload_namespaces.php
tập tin, bạn có thể thấy các không gian tên và các thư mục mà chúng được ánh xạ tới.
composer.json
"autoload": {
"psr-0": {
"Book\\": "src/",
"Vehicle\\": "src/"
}
}
- Tìm kiếm Sách \ Lịch sử \ UnitedStates trong src / Sách /History/UnitedStates.php
- Tìm kiếm Xe \ Air \ Wings \ Máy bay trong src / Xe /Air/Wings/Airplane.php
psr-4
Nhìn vào vendor/composer/autoload_psr4.php
tập tin, bạn có thể thấy các không gian tên và các thư mục mà chúng được ánh xạ tới.
composer.json
"autoload": {
"psr-4": {
"Book\\": "src/",
"Vehicle\\": "src/"
}
}
- Tìm kiếm Sách \ Lịch sử \ UnitedStates trong src /History/UnitedStates.php
- Tìm kiếm Xe \ Air \ Wings \ Airplane trong src /Air/Wings/Airplane.php
composer.json
"autoload": {
"psr-4": {
"Book\\": "src/Book/",
"Vehicle\\": "src/Vehicle/"
}
}
- Tìm kiếm Sách \ Lịch sử \ UnitedStates src / Sách /History/UnitedStates.php
- Tìm kiếm Xe \ Air \ Wings \ Máy bay trong src / Xe /Air/Wings/Airplane.php