2016-09-29 8 views
0
私はエラーを取得しSilverstripe 3.4で

Silverstripe 3.4は定義し、パブリック静的

'Parse error: syntax error, unexpected '.', expecting ',' or ';' in /Applications/MAMP/htdocs/Silverstripe/myModule/code/Page.php on line 10' 

_config.php:

define('THIS_MODULE_DIR', basename(dirname(__FILE__))); 

Page.php:

public static $icon = THIS_MODULE_DIR.'/img/contact-file.gif'; // line 10 

なぜこのエラーを説明してください起こる/私は間違ってやっている。

答えて

1

PHP 5.6より前のバージョンでは、デフォルト値の式を使用できません。あなたは使用することができます

public static $icon = 'my-folder/img/contact-file.gif'; 

しかし、そのフォルダには特定の名前が必要です。

また、クラスと同じファイル内の値を設定することができますが、減速

<?php 

class Foo { 
    public static $icon; 
} 

Foo::$icon = THIS_MODULE_DIR.'/img/contact-file.gif'; 

後に最善の選択肢とはいえ、特に何の以前のバージョンがこれ以上サポートされていない、少なくともPHP 5.6にアップグレードすることです。

+0

こんにちは! PHP 5.6で同じエラーが発生しました。 7.0;成功なしの第2の提案。私はmy-folder/... -pathを使う必要があります。 –

関連する問題