2017-07-14 71 views
0

我與Laravel框架和版本的PHP 5.5.12不行陣列接口到PHP

<?php 
namespace App\pattern; 

interface status 
{ 

    const status = array( 
      "confirm"=> 1 
      ,"unconfirm"=> 2 
      ,"record"=> 3 
    ); 
} 

後使用類

$r = $this::status['confirm']; 

顯示錯誤

FatalErrorException在ContentController工作.php第19行:語法錯誤,意外'['

回答

1

沒有$this,這是一個界面。

你需要使用它喜歡:

$r = status::status['confirm']; 
// ^ ^
//  |  constant name 
// interface name 
// 
echo $r; 

而且奇怪,因爲它可能是,接口做支撐​​常量,表示here: php constants

在PHP 5.5,雖然,你不能有array作爲常量

您可以檢出https://3v4l.org/JbdJa,並將其視爲接口調用或在實現該接口的類內部工作

+0

感謝 我回顧了版本的問題版本php.5.6 一般要定義一個數組常量 –