有人有T_PAAMAYIM_NEKUDOTAYIM吗?


当前回答

它是PHP中::操作符的名称。它的字面意思是“双冒号”。出于某种原因,他们用希伯来语命名它。检查你的代码语法,在适当的地方放一个::

其他回答

它是双冒号操作符::(参见解析器令牌列表)。

这只是发生在我的foreach循环。我无意中键入($array as $key as $value), PHP反对第一个as。

编辑:不幸的是,从PHP 8.0开始,答案不再是“不,不再是”。这个RFC没有像我希望的那样被接受,建议将T_PAAMAYIM_NEKUDOTAYIM改为T_DOUBLE_COLON;但它被拒绝了。

注意:我保留这个答案是为了历史目的。实际上,由于RFC的创建和某些时候的投票比例,我创建了这个答案。另外,我保留这个,希望它在不久的将来被接受。

希伯来语是"双冒号"的意思。

对我来说,这发生在一个类函数中。

在PHP 5.3及以上版本中,$this::$默认值工作正常;当我把代码交换到一个服务器上时,不管出于什么原因,这个服务器的版本号更低,它抛出了这个错误。

解决方案,在我的情况下,是使用关键字self而不是$this:

Self::$defaults工作得很好。