当我通过 pecl
安装 Xdebug 时,它在我的 php.ini 文件中添加了以下行。
extension="xdebug.so"
我使用的一切都有效。直到今天。
今天我在为交互式调试设置 Xdebug 时遇到了问题。在将上面的内容更改为
之前,我什么都做不了zend_extension="/usr/local/lib/php/extensions/xdebug.so"
(注意:我认为这就是我工作的原因,但我不是 100% 确定)
这引起了我的疑问。通过 extension=
与 zend_extension
加载扩展有什么区别?
最佳答案
Zend_extentions 是内置于 Zend 引擎本身的扩展。引擎解析、解释和执行 PHP 脚本。更改引擎会改变 PHP 的工作方式。
包含的图表将描述扩展和 zend_extension 之间的主要区别。
这两种类型的扩展共享许多功能。两种类型的区别主要在于它们注册到引擎中的钩子(Hook)。尽管它非常不常见,但扩展既可以是 PHP 扩展,也可以是 Zend 扩展。 Xdebug 就是一个很好的例子。
在下图中查找主架构
关于php - php.ini 中的 Extension 和 zend_extension 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1758014/