5

グローバルであるかのように名前空間内で関数を呼び出すことを許可する PHP 名前空間を取得する方法はありますか?

例:

handle()

それよりも:

prggmr\handle()

これが私のコード例です:

<?php
require_once 'prggmr/src/prggmr.php';

prggmr\handle(function() {
  echo 'This is a test scenario';
}, 'test');

prggmr\signal('test');

エイリアスは関数では機能しません:

<?php
require 'prggmr/src/prggmr.php';
use prggmr\handle;

handle(function(){
    echo "Test";
}, "test");

結果:

Fatal error: Call to undefined function handle()
4

3 に答える 3

2

私の理解から、ドキュメントからのこの抜粋はそれが不可能であると言っています...

関数も定数も、useステートメントを介してインポートすることはできません。

ソース:

http://www.php.net/manual/en/language.namespaces.faq.php#language.namespaces.faq.nofuncconstantuse

于 2012-04-19T17:16:10.790 に答える
2

名前空間全体ではありません。しかし、単一の名前の場合は、次のことができます

use p\handle;

justにエイリアス されます。p\handlehandle

于 2012-04-19T15:48:19.007 に答える