gpt4 book ai didi

php - 令人困惑的 PHP OO 场景

转载 作者:可可西里 更新时间:2023-11-01 14:05:34 24 4
gpt4 key购买 nike

为什么允许这样做?当您继承使用此范例的代码时,这会非常令人困惑……尤其是当所述代码甚至没有正式声明公共(public)属性,而是以某种随机方法设置它时。有没有办法阻止它(更改设置、使用某些关键字或使用界面)?

class Collision
{
public $Sort = "sort property";

public function Sort()
{
print 'sort function called<br/>';
return 'sort function return';
}
}

$a = new Collision();
print $a->Sort . '<br/>';
print $a->Sort() . '<br/>';

输出:

sort property
sort function called
sort function return

最佳答案

这是允许的,因为 PHP 区分属性和方法。访问它们时,PHP 使用函数括号 () 的存在(或不存在)来确定是否正在引用属性或方法。因此,对于计算机来说没有歧义,即使对于人类来说可能会造成混淆 =)

关于php - 令人困惑的 PHP OO 场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6809033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com