This is a collection of questions that come up every now and then about syntax in PHP. This is also a Community Wiki, so everyone is invited to participate in maintaining this list.
It used to be hard to find questions about operators and other syntax tokens.¹
The main idea is to have links to existing questions on Stack Overflow, so it's easier for us to reference them, not to copy over content from …
这是关于编程PHP时可能遇到的警告,错误和通知的一些答案,并且不知道如何修复.这也是社区Wiki,因此邀请每个人参与添加和维护此列表.
Stack Overflow上经常弹出诸如"已发送标头"或"调用非对象成员"之类的问题.这些问题的根本原因总是一样的.因此,这些问题的答案通常会重复,然后显示OP在他/她的特定情况下要改变哪一行.这些答案不会为网站添加任何价值,因为它们仅适用于OP的特定代码.具有相同错误的其他用户不能轻易地从中读取解决方案,因为它们过于本地化.这很难过,因为一旦你理解了根本原因,修复错误是微不足道的.因此,该列表试图以一般的方式解释解决方案.
如果您的问题已被标记为重复,请在下面找到您的错误消息并将修复程序应用于您的代码.答案通常包含进一步调查的链接,以防单独的一般答案不清楚.
如果您想贡献,请添加您的"收藏"错误消息,警告或通知,每个答案一个,简短说明它意味着什么(即使它只是突出显示其手册页的术语),可能的解决方案或调试方法和现有问答的清单.此外,随时改善任何现有的答案.
另外,请参阅
在php web手册的侧栏中,addChild方法使用范围解析运算符链接文本::,但在示例中它使用了Arrow运算符.谁能告诉我为什么会这样?
可能重复:
在PHP中,有什么区别::和 - >?
在PHP中,使用箭头->和范围分辨率运算符调用类中的函数()时的主要区别是::什么?
为了更多的清关,区别:
$name = $foo->getName();
$name = $foo::getName();
Run Code Online (Sandbox Code Playgroud)
范围解析运营商的主要利润是::什么?
我对PHP非常体面,但只是程序性的.所以我决定冒险学习面向对象.我已经掌握了它,并且非常喜欢它.
在PHP.net上,我总是看到面向对象的mysqli::query.
但是,我见过的每个例子都mysqli->query和我一直使用的一样.
今天,我遇到了实际看到::在类示例中使用过.
所以现在,我的问题是,::和之间是否存在差异->?是不是"和'?之间的区别?
当你试图访问类内部方法的属性时,和 - 和 - 之间的区别是什么,在某些地方有与面向对象编程相关的运算符的完整引用?