当前位置: 首页 > 知识库问答 >
问题:

PHP 5.6.3解析错误:语法错误,类中意外的“[”

公孙河
2023-03-14

当我用php创建一个类时,我遇到了这个错误:

Parse error: syntax error, unexpected '[', expecting ',' or ';' on line 5 

一个简单的例子:

<?php

class MyClass
{
  public $variable["attribute"] = "I'm a class property!";
}

?>

我已经看过Reference-PHP中这个错误意味着什么?但这似乎不符合我的情况。所有其他现存问题的问题似乎都依赖于一个旧的PHP版本。但是我用的是PHP 5.6.3!

我能做什么?我只是失明吗?

共有1个答案

长孙弘壮
2023-03-14

您不能显式地创建那样的变量(数组索引)。你必须这样做:

class MyClass {
    // you can use the short array syntax since you state you're using php version 5.6.3
    public $variable = [
        'attribute' => 'property'
    ];
}

或者,您可以(像大多数人一样)这样做:

class MyClass {
    public $variable = array();

    function __construct(){
        $this->variable['attribute'] = 'property';
    }
}
// instantiate class
$class = new MyClass();
 类似资料:
  • 我正在使用Flash和PHP创建一个JPG。我让Flash和PHP在本地主机服务器上按预期工作。当我上传到服务器时,出现以下错误: 分析错误:语法错误,在/home/carlosrg/public\u html/mysubdomain/image中出现意外的“:”。php在线6 以及守则: 提前感谢您的时间。

  • 第22行是: 我不知道为什么我会得到这个,我已经检查了我的语法,所有似乎是正确的。它基本上不喜欢执行查询后的任何内容 编辑: 我明白这是容易SQL注入,但我这样做只是为了测试目的。

  • 这是我正在开发的wordpress插件的代码。 我是插件开发新手,不知道为什么会出现这样的错误:

  • 问题内容: 我有这个行代码 在我的本地(WAMP)php 5.4.3上运行良好,但是当我将其托管在服务器cpanel上时,它将给出此错误 我服务器上的php版本是5.2.17 我没有发现任何问题,请帮忙 问题答案: 您需要运行PHP 5.4+才能使用速记数组

  • 问题内容: 调试代码时出现此错误: PHP解析错误:语法错误,第72行的order.php中出现意外的T_OBJECT_OPERATOR 这是代码段(从第72行开始): 问题答案: 不幸的是,不可能在刚用PHP 5.4之前创建的对象上调用方法。 在PHP 5.4和更高版本中,可以使用以下内容: 注意必填的括号对。 在以前的版本中,必须在变量上调用方法:

  • 我发现php endif出现错误,找不到错误。这里我给出了我的代码。请帮我修一下