我將一個現有的項目移植到命名空間,最後我碰到了一些牆,官方文檔無法幫助我。也許你們可以! :)關於PHP命名空間的一些問題
1)我如何從命名空間上面的級別擴展一個類?例如:
namespace MyProject\Exceptions;
abstract class Handler {
}
namespace MyProject\Exceptions\Handlers;
class Test extends \MyProject\Exceptions\Handler {
}
2)如何使用具有期望回調函數的命名空間?
namespace MyProject;
class Main {
public function __construct() {
set_error_handler(array('MyProject', 'handleErrors'));
}
public function handleErrors() {
echo "hi";
}
}
當然,使用適當的類型檢查。其他任何人都希望看到類型檢查函數foo(function bar){}'?或者更可能的是,'function foo(Callable bar){}'https://wiki.php.net/rfc/callable –