2017-05-10 78 views
1

PHP 5.6 Symfony的3未定義的常量錯誤的Symfony

我有包含與定義的常量命名空間捆綁文件...

constfile.php

<?php 
namespace Some\Interesting\ConstFile { 
    const NAME_OF_CONSTANT = 'Some Constant'; 
} 
namespace Some\Interesting\ConstFile\Specific { 
    const NAME_OF_SPECIFIC_CONSTANT = 'Some Specific Constant'; 
} 
使用命名空間時

然後我有另一個文件夾,我試圖使用常量...

stuff.php

<?php 
namespace More\Cool\Stuff; 

use Some\Interesting\ConstFile as CF; 
use Some\Interesting\ConstFile\Specific as CFS; 

class Stuff { 
    public function doit() {  
     $output->writeln(CF\NAME_OF_CONSTANT); 
     $output->writeln(CFS\NAME_OF_SPECIFIC_CONSTANT); 
    } 
} 

PHPStorm對此設置沒有任何抱怨。但是,當我運行這個,我得到'致命錯誤:未定義常量NAME_OF_CONSTANT在stuff.php'錯誤。

有什麼想法,我做錯了什麼?

回答

1

嘗試加載此類文件時,自動加載功能無法正常工作,請嘗試手動添加原始文件。

require 'path/to/constfile.php' 
-1

這個錯誤也可能發生,當你錯誤和用反斜槓前綴你的名字空間。 使用聲明可以通過前綴\命名空間不能。 命名空間中的反斜槓導致PHP將整行理解爲常量。