PHP7.4全新扩展FFI如何深入详解?

2026-04-03 12:030阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2721个文字,预计阅读时间需要11分钟。

PHP7.4全新扩展FFI如何深入详解?

随着PHP7.4的发布,引入了一个我认为非常有用的扩展:PHP FFI(Foreign Function Interface)。在PHP FFI RFC中,对它的描述如下:

对于PHP,FFI提供了一种编写PHP扩展和绑定到C库的方法。

随着PHP7.4而来的有一个我认为非常有用的一个扩展:PHP FFI(Foreign Function interface),引用一段PHP FFI RFC中的一段描述:

For PHP, FFI opens a way to write PHP extensions and bindings to C libraries in pure PHP.

是的,FFI提供了高级语言直接的互相调用,而对于PHP而言,FFI让我们可以方便的调用C语言写的各种库。

其实现有大量的PHP扩展是对一些已有的C库的包装,某些常用的mysqli,curl,gettext等,PECL中也有大量的类似扩展。

传统的方式,当我们需要用一些已有的C语言的库的能力的时候,我们需要用C语言写包装器,把他们包装成扩展,这个过程中就需要大家去学习PHP的扩展怎么写,当然现在也有一些方便的方式,某种Zephir。但总还是有一些学习成本的,而有了FFI之后,我们就可以直接在PHP脚本中调用C语言写的库中的函数了。

而C语言几十年的历史中,积累积累的优秀的库,FFI直接让我们可以方便的享受这个庞大的资源了。

阅读全文

本文共计2721个文字,预计阅读时间需要11分钟。

PHP7.4全新扩展FFI如何深入详解?

随着PHP7.4的发布,引入了一个我认为非常有用的扩展:PHP FFI(Foreign Function Interface)。在PHP FFI RFC中,对它的描述如下:

对于PHP,FFI提供了一种编写PHP扩展和绑定到C库的方法。

随着PHP7.4而来的有一个我认为非常有用的一个扩展:PHP FFI(Foreign Function interface),引用一段PHP FFI RFC中的一段描述:

For PHP, FFI opens a way to write PHP extensions and bindings to C libraries in pure PHP.

是的,FFI提供了高级语言直接的互相调用,而对于PHP而言,FFI让我们可以方便的调用C语言写的各种库。

其实现有大量的PHP扩展是对一些已有的C库的包装,某些常用的mysqli,curl,gettext等,PECL中也有大量的类似扩展。

传统的方式,当我们需要用一些已有的C语言的库的能力的时候,我们需要用C语言写包装器,把他们包装成扩展,这个过程中就需要大家去学习PHP的扩展怎么写,当然现在也有一些方便的方式,某种Zephir。但总还是有一些学习成本的,而有了FFI之后,我们就可以直接在PHP脚本中调用C语言写的库中的函数了。

而C语言几十年的历史中,积累积累的优秀的库,FFI直接让我们可以方便的享受这个庞大的资源了。

阅读全文