PHP - 各种扩展「底层扩展,上层扩展,自带扩展」

1.应用场景

了解PHP扩展, 学以致用, 帮助理解PHP语言的本质, 以及如何开发出更加高效程序.

2.学习/操作

查看源图像

1. 文档

PHP: 按归属分 - Manual

怎么样“抄“一个PHP扩展

php 扩展开发 - 扩展生成器

PHP 扩展开发检测清单(扩展开发必读)
 

 SPL 函数 ¶

https://www.jianshu.com/p/f8d8111d5d0a  // php spl使用

https://pecl.php.net/  // What is PECL?

https://pear.php.net/  // PEAR - PHP Extension and Application Repository

PHP 生成UUID_william_n的博客-CSDN博客_php 生成uuid  // PHP中生成UUID

http://www.bubuko.com/infodetail-2390379.html    // php安装uuid扩展

PHP: 其它基本扩展 - Manual -- 推荐好好看看

2.整理输出

2.1 PHP扩展是什么?

为特定的应用提供现成的函数或者类。     

2.2 扩展分类

按照实现层级划分:

上层扩展 // 使用PHP扩展编写

底层扩展 // 使用C语言编写

按照功能划分:

有很多, 可能是视图展示, 数据连结, 操作, 也能是性能分析, 日志记录等

个人可做区分

 

2.3 PHP扩展的作用?

为特定的应用提供现成的函数或者类, 可复用, 避免重复造轮子, 节约时间成本, 提高效率

2.4 如何使用PHP扩展?

PHP底层扩展:

比如使用C语言编写的扩展程序

要使用共享扩展库,必须经过生成预编译文件,预编译,编译,安装,然后加载

[这是PHP的底层扩展标准流程]。

以下说明的方法提供了怎样编译和安装扩展库的各种指导,但并不会自动加载它们。

参见: PHP: PECL 安装介绍 - Manual

可以通过将其包括在 php.ini 中用 extension PHP 指令加载,或者 用 dl() 函数。

以及其他扩展「很多PHP开发者都不了解,不熟悉,不会使用,包括自己」

PHP: 其它基本扩展 - Manual

Linux:

TBD

Windows:

https://www.php.net/manual/zh/install.windows.legacy.index.php#install.windows.buildin

PHP上层扩展: 

使用PHP代码编写,主要表现为PHP 类,函数

直接使用composer进行安装即可, 当然也可以手动安装, 只是注意类自动加载.

2.5 如何理解当前市面上优秀PHP扩展?

先了解 PECL 与 PEAR

PECL is a repository for PHP Extensions, providing a directory of all known extensions and hosting facilities for downloading and development of PHP extensions.

The packaging and distribution system used by PECL is shared with its sister, PEAR.

简单讲:

PECL是一个用于PHP扩展的存储库,提供所有已知扩展的目录以及用于下载和开发PHP扩展的托管

设施。

类似于 Composer 于 PHP.

市面上的优秀的PHP扩展不论是底层扩展还是上层扩展, 都是经过市场的考验, 被证明是优秀的作品,

具有出色的表现. 基本上都是可以被信任, 从而被广大开发者应用到生产环境中,产生效益.

2.6 如何编写自定义PHP「上层」扩展?

可参考的文档有:

应用结构(Application Structure): 扩展(Extensions) - Yii 2.0 权威指南 - 文档 - Yii Framework 中文网Yii Framework 2.0 权威指南。https://www.yiichina.com/doc/guide/2.0/structure-extensions还有其他书籍等.

编写PHP底层扩展

Zephir写PHP扩展(一) - 知乎

后实践,然后输出。

2.7 总结思考: PHP扩展的本质, 与PHP的关系?

正如PHP扩展的定义和用处一样,  本质还是代码, 而且是优秀的代码实现.。

能和PHP紧密配合的程序「底层扩展」, 函数, 类「PHP层的扩展」,封装的功能, 从而很多有相同需求的开发者, 不必重复造轮子, 而且花费较大的精力, 未必有开源的项目/扩展做的好~~ 我想PHP扩展的本质也是一种开源项目, 开源精神.

后续补充

...

3.问题/补充

1. 查看PHP扩展的目录位置

php-config --extension-dir

/usr/local/Cellar/php/8.1.1/pecl/20210902

4.参考

参见文档阅读列表

后续补充

...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值