2011-12-21 27 views
2

抽象クラスの名前空間の定義に問題があります。 クラスはそうのようになります。抽象クラスのPHP名前空間

helloworld.class.php:index.phpの

namespace Kitten; 
abstract class HelloWorld { 
    public static function hi() 
    { 
     echo 'hello'; 
    } 
} 

require_once helloworld.class.php; 
Kitten::HelloWorld::hi(); 

私は取得していますエラーは次のとおりです。syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM

正しい方向への助けや指導をいただければ幸いです。おかげさまで

+3

btw、T_PAAMAYIM_NEKUDOTAYIMは、ヘブライ語では::(ダブルコロン)を意味します。 – amoebe

+0

http://php.net/namespaces – hakre

答えて

3

名前空間は、バックスラッシュ文字

\Kitten\HelloWorld::hi();

T_PAAMAYIM_NEKUDOTAYIMでアクセスされているダブルコロン::、あなたの文はまた、誤っている必要がScope Resolution Operator

を意味します。ファイルとパスを次のように引用符で囲みます。

require_once('helloworld.class.php'); 
+0

申し訳ありません。それはそれをしたようだ。内部でハイクラスでは、私は実際にすでに読み込まれている別のメソッドを静的に呼び出そうとしています。しかし、現在定義されている名前空間のフレーム/コンテキスト内でそれを呼び出そうとしています。何かご意見は? – onassar

+0

ああいいね。クラス名の先頭にスラッシュ(/)を付けるだけです。皆さんありがとう。 – onassar