⊗ppOpNsRPt 100 of 107 menu

Laluan Relatif dalam Ruang Nama dalam OOP dalam PHP

Katakan dalam fail index.php berlaku panggilan berikut:

<?php namespace Admin\Data; new \Core\Controller; ?>

Seperti yang anda sudah tahu, apabila merujuk kepada kelas sebelum ruang namanya, anda harus menulis slash terbalik. Sebenarnya, ini tidak semestinya. Jika slash ini tidak ditulis, maka ruang nama yang dipanggil akan dikira secara relatif kepada ruang nama semasa. Lihat contoh:

<?php namespace Admin\Data; new Core\Controller; // bersamaan dengan \Admin\Data\Core\Controller ?>

Diberi dua kelas:

<?php namespace Modules\Shop\Core; class Cart { } ?>
<?php namespace Modules\Shop; class UserCart extends \Modules\Shop\Core\Cart { } ?>

Permudahkan kod untuk pewarisan kelas, dengan mengambil kira bahawa ruang nama kelas kita mempunyai bahagian yang bertindih.

Diberi dua kelas:

<?php namespace Core\Data; class Controller { } ?>
<?php namespace Core\Data; class Model { } ?>

Beginilah objek kelas ini dicipta dalam fail index.php:

<?php namespace Core\Data; $controller = new \Core\Data\Controller; $model = new \Core\Data\Model; ?>

Permudahkan kod untuk mencipta objek, dengan mengambil kira ruang nama di mana objek kelas kita dicipta.

kaituzbnid