为什么下划线在 PSR-0 中转换为目录分隔符?
Why are underscores converted to directory separators in PSR-0?
我想弄清楚为什么 class 名称中的下划线会被转换为 PSR-0 中的目录分隔符?我确定这是有原因的,但我想不出为什么。
如果我在命名空间 \namespace\subnamespace
中有一个名为 my_class_name
的 class
当我想要的是 \namespace\subnamespace\my_class_name
时,那不会转换为 \namespace\subnamespace\my\class\name
吗?
我知道如果我的 class 系统是围绕它构建的,它就可以工作,但是如果我想要目录分隔符,我会使用反斜杠而不是下划线。
因为历史。在 PHP 为项目获得命名空间支持之前,使用下划线分隔的位作为一种穷人的命名空间是很常见的。在创建 PSR-0 以使其成为一个实际的决定时,仍有足够多的事情在进行。
我想弄清楚为什么 class 名称中的下划线会被转换为 PSR-0 中的目录分隔符?我确定这是有原因的,但我想不出为什么。
如果我在命名空间 \namespace\subnamespace
中有一个名为 my_class_name
的 class
当我想要的是 \namespace\subnamespace\my_class_name
时,那不会转换为 \namespace\subnamespace\my\class\name
吗?
我知道如果我的 class 系统是围绕它构建的,它就可以工作,但是如果我想要目录分隔符,我会使用反斜杠而不是下划线。
因为历史。在 PHP 为项目获得命名空间支持之前,使用下划线分隔的位作为一种穷人的命名空间是很常见的。在创建 PSR-0 以使其成为一个实际的决定时,仍有足够多的事情在进行。