一般而言,php速度已经比较快,但是,对于一些较高级开发者而言,如果想要追求更快的速度,那毫无疑问可以通过自己写c代码,并编译为动态链接库(常为.so文件),然后php通过创建一个新的扩展(extension),并在扩展里调用该.so文件,同时对外暴露出php函数接口。 一、动态链接库(shared) 动态链接库的文件名后缀通常是 ".so"。在Windows系统中,其文件名后缀是".dll"。 程序如果是和动态连接库进行链接(link),程序运行时需要能够找到相应的动态链接库文件。 使用动态链接库存编译的程序在运行时要求用户的机器上必需也安装了相应的动态链接库文件,这些库文件需要放置在特定的目录,以让程序能够加载这些库。 虽然这似乎没有使用静态链接库的程序使用方便,但却减少了程序的大小。对于那些会被很多程序使用到的库,使用动态链接的好处就更加明显了。 动态链接库的制作: 选项-fPIC在AMD64上是必须的,其它平台是则不是必要选项。 包含静态链接库到动态链接库中 编译动态链接库时,如果需要链接静态库,并把链接库的内容包含到要编译的动态库中,可以使用选项-Wl,--whole-archive。 例如: 上面的-Wl表示传递给linker(链接器)。 二、调用动态C/C++链接库 具体步骤如下: 在php/ext目录下创建扩展头文件,取名为myfunctions.def
72小时资讯榜
2
19岁黑客跨三国换IP狂奔,还是被Windows一
网安动态
328人已阅读
3
18K Star,让AI自己跑渗透测试,这个开源项
渗透测试
315人已阅读
4
一个 1.5B 的模型,把网络安全攻防都装进了
安全学院
349人已阅读
5
多家电商遭“银狐”木马攻击,央视披露细节
网安动态
551人已阅读
6
手机也能AI养龙虾:安卓和iOS版OpenClaw应
AI动态
526人已阅读
社区热门
1
━※☆※━★===二〇二六年论坛每日签到帖=
2026-03-13
4
从上大学一直玩黑基 到现在已经37岁 感谢黑
2025-06-03
6
好久没来这里了,居然能正常登录,佩服站长
2025-05-19
|