我正在开发的Web应用程序需要能够处理同一PHP扩展的两个不同版本。(具体来说是Mapserver 5.6的MapScript和Mapserver 6.2的MapScript。)
脚本在php执行后才知道需要加载哪个版本。(但每个请求只需要一个扩展。)
我的原始计划是使用php内置的dl函数,但我发现由于安全问题已经禁用了dl。(http://php.net/manual/en/function.dl.php)
有没有安全的方法在执行期间加载扩展?或者始终都加载它们,但将它们放在不同的命名空间中,以便可以分别访问它们?
脚本在php执行后才知道需要加载哪个版本。(但每个请求只需要一个扩展。)
我的原始计划是使用php内置的dl函数,但我发现由于安全问题已经禁用了dl。(http://php.net/manual/en/function.dl.php)
有没有安全的方法在执行期间加载扩展?或者始终都加载它们,但将它们放在不同的命名空间中,以便可以分别访问它们?
dl('v1.so', \this\that)
。 - Marc B