在Yii2中,命名空间命名约定和它们所在的文件夹之间是否存在任何关系


In Yii2 is there any relationship between Namespaces naming conventions and folders they reside in?

例如,有一个类似yii'consoleyii'console'controllers的名称空间。在yii'console中,所有.php文件都由namespace yii'console;定义,与yii'console'controllers中的.php文件由namespace yii'console'controllers; 定义相同

这是否意味着php命名空间函数和类可以作为同一个命名空间位于多个文件中?名称空间是由它们在应用程序上的位置定义的,还是这只是Yii约定?

这是否意味着php命名空间函数和类可以作为同一个命名空间位于多个文件中?

如果函数是方法,则它们不直接与命名空间相关,而是与属于该命名空间的类相关。

名称空间是由它们在应用程序上的位置定义的,还是这只是Yii约定?

这并不是真正的YII约定,其他框架(symfony、zend、laravel、cakepp等)也或多或少地以这种方式工作。此path<=>CCD_ 9关系通常由CCD_。

请参阅PSR-4中的命名空间示例。

您应该阅读php文档。php-fig可能有助于您理解通常使用名称空间的原因和方式。