2013-06-07 2 views
3

Я изучаю пространства имен в PHP. Вот код, я используюНеопределенные постоянные пространства имен

lib1.php

<?php 
namespace App\Lib1; 

const MYCONST = "App\Lib1\MYCONST"; 

function MyFunction() { 
    return __FUNCTION__; 
} 

class MyClass { 
    static function WhoAmI() { 
     return __METHOD__; 
    } 
} 

app.php

<?php 
header('Content-type: text/plain'); 
require_once 'lib1.php'; 

echo App\Lib1\MYCONST; 

Проблема заключается в том, что по какой-то причине я получаю

Undefined constant 'App\Lib1\MYCONST' in <b>/Applications/MAMP/htdocs/namespaces/myapp.php 

Что я делать не так?

ответ

0
namespace App\Lib1; 

const MYCONST = "App\Lib1\MYCONST"; 

function MyFunction() { 
    return __FUNCTION__; 
} 

class MyClass { 
    static function WhoAmI() { 
     return __METHOD__; 
    } 
} 


header('Content-type: text/plain'); 
require_once 'lib1.php'; 
use App\Lib1; 
echo \App\Lib1\MYCONST; 

Попробуйте это, хотя tbh Я не знаком с пространством имен в php. Я не уверен, что использование требуется на 100%, или, если ему действительно нужно, \ it \ it \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ в вашем файле декларации, вы бы сделали echo \ App \ MYCONST; но опять же недостаточно знакомы, это может быть хорошо с подпространством имен

Смежные вопросы