为PHP函数制作依赖包
搭建EulerOS环境
制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。若所需依赖涉及操作系统相关的依赖包,使用其他操作系统环境打包时,可能因底层依赖库的差异而出现找不到动态链接库的问题。
EulerOS是基于开源技术的企业级Linux操作系统软件,具备高安全性、高可扩展性、高性能等技术特性,能够满足客户IT基础设施和云计算服务等多业务场景需求。
此处推荐Huawei Cloud EulerOS,可选择以下方法搭建环境:
- 在华为云购买一台EulerOS的ECS弹性云服务器,请参见购买并登录Linux弹性云服务器。在基础配置环节选择公共镜像时,选择“Huawei Cloud EulerOS操作系统”和具体的镜像版本。
- 下载EulerOS镜像,在本地使用虚拟化软件搭建EulerOS系统的虚拟机。
约束与限制
如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
制作依赖包前,请确认环境中已安装与函数运行时相匹配版本的PHP。以PHP 7.3通过composer安装protobuf3.19依赖包为例,默认环境中已经安装了composer,其他PHP版本和依赖包制作过程相同。
- 新建一个composer.json文件,在composer.json中填入以下内容。
{ "require": { "google/protobuf": "^3.19" } }
- 执行如下命令。
Composer install
命令执行后,当前目录下会生成一个vendor文件夹,文件夹中有autoload.php、composer和google三个文件夹。
- 使用以下命令生成zip包。
zip –rq vendor.zip vendor
如需同时封装多个依赖包,在composer.json文件中指定需要的依赖,把生成的vendor文件整体打包成zip文件上传即可。

在PHP项目中,使用composer下载的第三方依赖,需通过require "./vendor/autoload.php" 进行加载。FunctionGraph默认将上传的ZIP包解压后的内容,置于与项目代码同一级别的目录下。