动态更改PHP中的类名称空间
是否可以动态更改PHP中的类名称空间 这纯粹是为了开发/测试环境,我想看看是否可以覆盖动态更改PHP中的类名称空间,php,namespaces,Php,Namespaces,是否可以动态更改PHP中的类名称空间 这纯粹是为了开发/测试环境,我想看看是否可以覆盖mysql\u查询 目前安装PECL apd不是一个选项。不可能!对于您的需求,更好的解决方案是在index.php文件中注册自动加载函数。获取单例实例后,您可以在其中获取环境状态。 例如,$environment=Env::getInstance()->environment()您的自动加载获取环境值ad依赖于该值do autoload 例如,您的所有生产类都位于production/class/here/g
mysql\u查询
目前安装PECL apd不是一个选项。不可能!对于您的需求,更好的解决方案是在index.php文件中注册自动加载函数。获取单例实例后,您可以在其中获取环境状态。 例如,
$environment=Env::getInstance()->environment()
您的自动加载获取环境值ad依赖于该值do autoload
例如,您的所有生产类都位于production/class/here/go/namespace/MyClass1.php
function __autoload($class)
{
$parts = explode('\\', $class); // namespace
$dir = Env::getInstance()->environment(); //string "production" or "debug"
require(
$_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.$dir .
implode(DIRECTORY_SEPARATOR, $parts).
'.php'
);
}
所有调试类都位于debug/class/here/go/namespace/MyClass1.php
function __autoload($class)
{
$parts = explode('\\', $class); // namespace
$dir = Env::getInstance()->environment(); //string "production" or "debug"
require(
$_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.$dir .
implode(DIRECTORY_SEPARATOR, $parts).
'.php'
);
}
诸如此类