我有结构:
/VBAL/
/VBAL/Interface/
/VBAL/Interface/Named.php
....
/VBAL/Component.php
组件.php:
namespace JV\VBAL;
class Component implements \JV\VBAL\Interface\Named {}
命名.php:
namespace JV\VBAL\Interface;
interface Named {}
但是我遇到了解析错误:
解析错误:语法错误,意外的“{”,期望 T_STRING 或 T_NAMESPACE 或 T_NS_SEPARATOR
如何将目录称为“命名空间”,或者放置文件?
Interface
是PHP中的保留字。您不能将其用作命名空间的一部分。
如前所述,
Interface
是保留字,不能用作命名空间的一部分。
两个不错的选择是:
Base
- 您可以在其中存储许多从中扩展的基类,例如接口、抽象类、特征
或
Interfaces
,但在我看来,这个用得很少,因为它是复数形式
从 php8 开始,保留关键字(例如
Interface
或 Trait
)可以用作命名空间的一部分。
<?php
namespace App\Entity\Interface;
interface FooInterface
{
}