有人有T_PAAMAYIM_NEKUDOTAYIM
吗?
u
。应该是T_PAAMAYIM_NEKUDOTAYIM
。(PAAMAYIM
=“ twice”,NEKUDOTAYIM
= :
=“נקודותיים”)
有人有T_PAAMAYIM_NEKUDOTAYIM
吗?
u
。应该是T_PAAMAYIM_NEKUDOTAYIM
。(PAAMAYIM
=“ twice”,NEKUDOTAYIM
= :
=“נקודותיים”)
Answers:
var_dump(empty(TRUE))
foreach($cats as cat
在cat
语法上有效的语句的后面只有一个唯一可接受的字符是::
,因为它将允许您指定称为的某个类的静态属性cat
。例如,如果cat
class具有一个称为的公共静态成员$mouse
,则foreach($cats as cat::$mouse)
完全有效php
,但除::
之后的其他任何语句都cat
将构成语法错误。如果$mouse
不是cat
您声明的属性,则会出现致命错误,但仍然不是语法错误。
Google创造奇迹。
这是希伯来文的“双冒号”。
它是::
PHP中运算符的名称。它的字面意思是“双冒号”。由于某种原因,他们用希伯来语命名。检查您的代码语法,并::
在适当的地方放置:-)
来自维基百科:
在PHP中,范围解析运算符也称为Paamayim Nekudotayim(希伯来语:פעמייםנקודתיים),在希伯来语中意为“双冒号”。
在以色列开发的PHP 3中使用的Zend Engine 0.5中引入了“ Paamayim Nekudotayim”这个名称。尽管它使许多不讲希伯来语的开发人员感到困惑,但仍在PHP 5中使用了此错误消息示例中的内容。 :
$ php -r ::解析错误:语法错误,意外T_PAAMAYIM_NEKUDOTAYIM
从PHP 5.4开始,有关范围解析运算符的错误消息仍包含此名称,但已在某种程度上阐明了其含义:
$ php -r ::解析错误:语法错误,意外的'::'(T_PAAMAYIM_NEKUDOTAYIM)
范围解析运算符(也称为Paamayim Nekudotayim),或更简单地说,是双冒号,是一个令牌,它允许访问类的静态,常量和重写属性或方法。
从类定义之外引用这些项目时,请使用类的名称。
从PHP 5.3.0开始,可以使用变量来引用类。变量的值不能是关键字(例如self,parent和static)。
起初,Paamayim Nekudotayim对于命名双冒号似乎是一个奇怪的选择。但是,在编写Zend Engine 0.5(支持PHP 3)时,Zend团队决定将其称为。它实际上确实意味着双冒号-在希伯来语中!
当您将PHP中的常量应用于empty()函数时,也会出现这种情况:
if (!empty(SOME_CONSTANT)) {
}
那是我的情况。我通过使用以下方法解决了它:
$string = SOME_CONSTANT;
if (!empty($string)) {
}
对我来说,这是在类函数中发生的。
在PHP 5.3及更高版本中$this::$defaults
运行良好;当我将代码交换到由于任何原因而具有较低版本号的服务器时,都会引发此错误。
就我而言,解决方案是使用关键字self
而不是$this
:
self::$defaults
效果很好。
$this
,或者你怎么了怎么了?