我是PHP的新手,但是对编程非常有经验。 查看有关属性的PHP网站页面: http : //www.php.net/manual/zh/language.oop5.properties.php我看到了这个示例。

<?php
class SimpleClass
{
   // invalid property declarations:
   public $var1 = 'hello ' . 'world';
   public $var2 = <<<EOD
hello world
EOD;
   public $var3 = 1+2;
   public $var4 = self::myStaticMethod();
   public $var5 = $myVar;

   // valid property declarations:
   public $var6 = myConstant;
   public $var7 = array(true, false);

   // This is allowed only in PHP 5.3.0 and later.
   public $var8 = <<<'EOD'
hello world
EOD;
}
?> 

运行此示例将返回错误:PHP Parse错误:语法错误,意外的“。”,期望为“,”或“;” 在第5行的test.php中

实际上,SimpleClass的php.net示例包含各种属性分配,这些属性分配不是直接文字的,所有这些似乎都引发了错误。 phpinfo()表示版本为PHP版本5.2.4。

这是与PHP版本相关的问题吗?

===============>>#1 票数:1

您引用的示例显示为:

//无效的属性声明:

在行不通的上方。 似乎很不言自明。

页面下方几行:

与heredocs不同,nowdocs可在任何静态数据上下文中使用,包括属性声明。

示例2:使用nowdoc初始化属性的示例

 <?php class foo { // As of PHP 5.3.0 public $bar = <<<'EOT' bar EOT; } ?> 

  ask by CrashAlpha translate from so

未解决问题?本站智能推荐: