1

PHP でクラスを作成しているときに、次のエラーが発生しました。

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

簡単な例:

<?php

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

?>

私はすでにReference - What does this error mean in PHP? を見ましたか? しかし、これは私の場合には当てはまらないようです。他のすべての既存の質問の問題は、古い PHP バージョンに依存しているようです。しかし、私はPHP 5.6.3を使用しています!

私に何ができる?私は目が見えないだけですか?

4

4 に答える 4

2

そのような変数 (配列インデックス) を明示的に作成することはできません。次のようにする必要があります。

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();
于 2015-01-11T12:46:28.687 に答える
1

以下に示すように宣言する必要があると思います:

class MyClass
{
   public $variable = array( "attribute" => "I'm a class property!" );
}
于 2015-01-11T12:46:01.293 に答える
1

最初に配列を作成します。以下のコードを使用してください

<?php

class MyClass
{
public $variable = array("attribute"=>"I'm a class property!");

}

?>

これがあなたに役立つことを願っています

于 2015-01-11T12:47:53.150 に答える