我是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

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

3回复

PHP类的版本控制[重复]

可能重复: 加载同一类的多个版本 设置不同版本的PHP类并根据配置值切换它们的最佳方法是什么? 这是我的情况(使用Zend Framework-无关紧要,但可能): 我想调用两种不同版本的Web服务。 我需要使用配置文件中的值在它们之间切换。 现在,我有一个充
2回复

PHP-使用代码解析字符串时出错

我曾经在PHP 4.X中无法正常工作的某些代码有问题,而在PHP 5.2.4中却无法正常工作 首先,有一个小示例代码类似于导致问题的代码。 不幸的是,我无法通过一个小例子来重现该问题。 该代码正在执行的工作是使用一些php代码构建一个字符串,以便稍后执行。 特别是,生成的代码将
1回复

可以使用变量变量动态分配类属性,以便在PHP中允许带有变量参数的类构造函数吗?

我正在构建一个类,最初想重载结构,但是发现PHP中不允许这样做。 我的解决方案是为一个构造函数使用变量参数。 但是,我在使用键=>值对中的字符串文字并分配类属性时遇到一些问题。 这引出我的主要问题-实际上是否可以通过构造函数使用变量变量来分配类属性? 请参见下面的示例:
2回复

PHP Getters / Setters使用或不使用

我正在通过观看大量的视频教程和阅读过程中的大量文章来学习PHP面向对象的编程。 我看到的许多PHP OOP教程都说使用getter和setter。 这对我没有意义; 为什么我会将类属性设置为私有或受保护,然后使用函数公开公开该属性? 我开始研究并在这里找到文章,现在请求这个问题:
3回复

分配给变量后,PHP类属性发生更改

举这个例子。 我从没注意到这样的行为: 我以为脚本完成后: $ a-> foo为:0 $ b-> foo为:1 $ c-> foo是:2 但是事实并非如此。 我得到: $ a-> foo是:2 $ b->
1回复

静态属性访问PHP中的静态属性

在创建应用程序时,遇到了一个静态变量的情况。 可以说是: 沿线,在某个地方我有另一个称为用户的静态变量,该用户访问上面定义的静态变量名称。 注意:这些属性是同一类的成员。 这样做,会出现以下错误。 解析错误:语法错误,意外的'$ XXX'(T_VARIAB
1回复

PHP分配日期函数并在类问题之外访问类属性

我为此感到震惊。 我正在尝试将date()函数分配给foo()类的属性。 我收到Parse错误:语法错误,意外的'(',期望的','或';'//这是date()行 我也尝试过。 没有错误,一切正常。 因此,在我看来,我们不能直接将date()分配给类属性。 请指出正确
1回复

使用Assoc Array PHP修改对象属性

好吧,我确实有一个小PHP类,上面有一些属性 现在我想通过使用关联数组来改变$a的属性,有点像这样 这可能吗? 注意:我没有权利修改课程,我的问题是我的大四学生总是修改课程。 我正在考虑处理更改类的动态方法,而不设置许多方法来修改对象属性
1回复

使用类获取器或类属性? (PHP)

在内部使用属性时,被认为是编写OOP类的最佳实践。 考虑以下课程; 如您所见,我在_doSomething()中使用属性_foo,尽管子类可以覆盖getFoo(),从而返回未存储回_foo的计算值; 那是一个缺陷。 我该怎么办? 将getter标记为final,在
2回复

PHP您可以在不同的类中使用相同的属性吗?

我是oop php的新手,我只是想知道您是否可以在多个类中使用相同的属性。 例如: 我可以使用该代码使用第二类(支票)中第一类(银行)或第三类(保存)中的所有公共属性吗?