类名PHP中的大写字母

Som*_*mal 20 php class letters

我的系统中有两个班级.一个叫文件,第二个是File.在我的本地主机上,当我实例化文件时,我得到文件对象,但我的朋友运行相同的脚本获取文件的对象,如大写字母无法识别,"文件"等于"文件".这是一些可配置的东西吗?我们都在Windows上运行.我有WampServer,他有XAMPP.

krt*_*tek 50

PHP对类命名不区分大小写.这意味着$file = new file()即使该类被命名File,您通常也可以这样做,反之亦然.

您是否有机会依赖类文件的自动加载?如果是这种情况,则可能根据计算机,解释器并不总是首先找到相同的文件.这将解释这个问题.

我强烈建议你重命名你的课程.依靠案例来区分两种不同的东西总是一个坏主意,按照惯例,类名总是以大写字母开头.

如果您无法更改类名,我建议您查看php命名空间.

  • @dsdsdsdsd - Y,为什么基本上符合所有标准? (4认同)
  • 但是在区分大小写的文件系统上的自动加载器不会在不同的情况下找到拼写的类. (2认同)

edo*_*ian 16

PHP中的类名不区分大小写(不依赖于操作系统)

class myclass {}

$x = new MYclaSS;

var_dump($x);

object(myclass)#1 (0) {
}
Run Code Online (Sandbox Code Playgroud)

一般的建议:你不应该开始尝试混合一些东西:)

这样的代码应该工作:

class ab {}

class AB {}

Fatal error: Cannot redeclare class AB in ... on line x
Run Code Online (Sandbox Code Playgroud)