什么是Zend扩展?

5
如果您查看此文档,第一个参数只返回Zend扩展。 与PHP(“简单”)扩展相比,什么是Zend扩展的确切含义?
1个回答

9
一个Zend扩展钩子进入语言的“较低层”。 一个单一的扩展可以同时是PHP扩展和Zend扩展。例如,Xdebug就是这样,使用Zend扩展组件来钩入语言的较低层以拦截调试调用。
Zend扩展是Zend Engine(ZE)本身的扩展,它是PHP堆栈的最底层。 PHP Wiki提供了很多额外的信息。我将引用简介:
“正如你所知,我们区分‘PHP扩展’和‘Zend扩展’。请遵循文章中的词汇表述,因为在内部,源代码更喜欢将PHP扩展称为‘模块’,而将Zend扩展称为‘扩展’。我们将保留更清晰的‘PHP扩展’与‘Zend扩展’措辞。”
两种扩展类型共享许多内容。两种类型之间的区别主要在于它们注册到引擎中的钩子。请记住,尽管这非常不寻常,但一个扩展可以同时是PHP扩展和Zend扩展。 Xdebug是一个很好的例子。
一般来说,Zend扩展也会在PHP扩展加载之前加载。
一个示例的PHP扩展是 PHP Redis Extension。这是一个仅限于PHP的扩展,不直接钩入Zend Engine。

谢谢。我知道xdebug。现在我明白了什么是Zend扩展。你知道一个例子,它只是一个PHP扩展吗? - Bob5421
没问题,很高兴能帮忙!PHP Redis Extension 是一个很好的例子。请看我的编辑 :) - Will

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接