首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么PHP中的函数和方法不区分大小写?

为什么PHP中的函数和方法不区分大小写?
EN

Stack Overflow用户
提问于 2010-05-01 19:48:55
回答 2查看 28.8K关注 0票数 112

PHP中的函数和方法不区分大小写,如下面的示例所示。

代码语言:javascript
复制
function ag()
{
    echo '2';
}

Ag();
class test {
    function clMe()
    {
        echo 'hi';
    }
}

$instance = new test;
$instance->clme();

但这不是变量的情况。理由是什么?

EN

回答 2

Stack Overflow用户

发布于 2011-06-10 13:52:06

让我引用一下Interview – PHP’s Creator, Rasmus Lerdorf的话

的第一个版本是一组简单的工具,我将它们组合在一起用于我的网站和一些项目。一个工具在mSQL数据库中做了一些奇特的日志记录,另一个工具则充当表单数据解释器。在我感到厌烦之前,我用C语言编写了大约30个不同的CGI程序,并将它们组合到一个C库中。然后,我编写了一个非常简单的解析器,它将从HTML文件中提取标签,并将它们替换为C库中相应函数的输出。

简单的解析器慢慢地包含了条件标签,然后是循环标签,函数等等。我从来没有想过我是在写脚本语言。我只是向宏替换解析器添加了一点功能。我仍然在用C语言编写我所有真正的业务逻辑。

我在某处读到过,由于所有引入的函数本质上感觉就像HTML文档中的标签,而且HTML标签不区分大小写,所以他选择PHP中的函数名称区分大小写。后来,这个特性在语言中保留了下来。

票数 104
EN

Stack Overflow用户

发布于 2010-05-01 19:52:12

是的,函数和方法名称不区分大小写。

是的,变量名是区分大小写的。

我不确定这是不是有原因--除非这种方式已经存在很长一段时间了,而且由于向后兼容性的原因,这种情况仍然存在。

作为参考,有几个指向手册各个页面的链接/引文:

For函数()

注意:函数名称不区分大小写,尽管调用函数通常是一种很好的形式,因为它们出现在函数的声明中。

方法并不比对象中的函数更多--特别是当我们考虑到PHP4和向后兼容性时。

对于变量(quoting):

PHP语言中的

变量由一个美元符号后跟变量名表示。变量名区分大小写。

对象属性并不比对象中的变量更多-- PHP4和向后兼容性也是如此。

票数 34
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2749781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档