php扩展能否实现热加载?

1.最近做php业务测试时候自己写了一个扩展,在php.ini中以extension方式引入的,如图

clipboard.png

现在想在测试时候加载扩展,其余时候不加载扩展,扩展的功能类似于xdebug那样 跟踪调试 的

问题:
是否能实现热加载,修改完php.ini后不重启就可以加载/卸载(公司高层不喜欢重启,我也很无奈)

希望大佬们能给一些解决思路,不胜感激!!!

阅读 4.5k
4 个回答

如果是用nginx代理php-fpm的话,可以重启php-fpm服务,不用重启nginx,是可以平滑重启的,apache的话就没什么办法了,具体细节你可以看看这篇文章
Nginx+Php-fpm运行原理详解

cli 模式下不需要重启,apache 的话应该都是要的

不能了,php启动就加载了所有扩展

if(!extension_loaded("mysqli"))
{
    dl("mysqli.so");
}
//do something
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题