如果你看本文档 http://php.net/manual/fr/function.get-loaded-extensions.php,第一个参数仅返回 Zend 扩展。
与 PHP(“简单”)扩展相比,Zend 扩展到底是什么?
Zend 扩展连接到该语言的“较低级别”。单个扩展既可以是 PHP 扩展,也可以是 Zend 扩展。例如,Xdebug 都使用 Zend 扩展组件挂钩到语言的较低层以拦截调试调用。
Zend 扩展是对 Zend 引擎 (ZE) 本身的扩展,它是 PHP 堆栈的最低级别。
PHP 维基百科 https://wiki.php.net/internals/extensions提供了很多附加信息。我引用一下简介:
您应该知道,我们区分“PHP 扩展”和“Zend 扩展”。考虑在文章后面使用这个词汇,因为在内部,消息来源更喜欢将 PHP 扩展称为“模块”,将 Zend 扩展称为“扩展”。我们将保留更清晰的“PHP 扩展”与“Zend 扩展”措辞。
这两种扩展类型共享很多东西。两种类型之间的区别主要在于它们注册到引擎中的钩子。请记住,尽管这种情况非常罕见,但扩展可以同时是 PHP 扩展和 Zend 扩展。 Xdebug 就是一个很好的例子。
通常,Zend 扩展也会在 PHP 扩展加载之前加载。
PHP 扩展的一个示例是PHP Redis 扩展 https://github.com/phpredis/phpredis。这是一个仅限 PHP 的扩展,不会直接挂接到 Zend 引擎。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)