本文介绍在函数计算中使用PHP语言编写函数的运行环境信息。
PHP运行时
函数计算目前支持的PHP运行环境如下:
PHP版本 | 操作系统 | 架构 |
---|---|---|
PHP 7.2 | Linux | x86_64 |
PHP内置库
函数计算的PHP运行环境中自带了一些常用库(Package)供您直接使用,目前包含的内置库如下所示。
Package | 版本 | 内置库介绍 |
---|---|---|
oss | v2.4.3 | 对象存储OSS SDK for PHP |
tablestore | v4.1.1 | 表格存储TableStore SDK for PHP |
mns | v1.3.5.5 | 消息服务MNS SDK for PHP |
fc | v1.2.1 | 函数计算FC SDK for PHP |
PHP内置扩展
内置扩展列表
说明 如果您需要查看并打印已安装的PHP扩展,请在目标函数的代码内写入
print_r(get_loaded_extensions());
。bcmath | bz2 | calendar | Core |
ctype | curl | date | dom |
exif | fileinfo | filter | ftp |
gd | gettext | gmp | hash |
iconv | imagick | json | libxml |
mbstring | memcached | mysqli | mysqlnd |
openSSL | pcntl | pcre | PDO |
pdo_mysql | Phar | posix | protobuf |
readline | redis | Reflection | session |
shmop | SimpleXML | soap | sockets |
SPL | standard | sysvmsg | sysvsem |
sysvshm | tokenizer | Xdebug | xml |
xmlreader | xmlrpc | xmlwriter | Zend OPcache |
zip | zlib | 无 | 无 |
内置扩展应用示例
以下示例代码使用json
对JSON字符串进行解析,解析内容输出至标准输出stdout。
<?php
function handler($event, $context) {
var_dump(json_decode('{"a":123, "b":true, "c":"abcd", "d":{"a":123}}', true));
return "bye";
}
安装PHP非内置扩展
当您需要使用PHP Runtime非内置扩展时,请根据以下步骤安装。本文以安装非内置扩展Mongodb为例进行介绍。
前提条件
操作步骤
- 在项目目录中执行以下命令,启动进入PHP Runtime镜像,并可以将当前目录挂载到容器的/code目录。
sudo docker run -v $(pwd):/code -it --entrypoint="" registry.cn-beijing.aliyuncs.com/aliyunfc/runtime-php7.2:latest bash
说明 如果您的电脑是Windows操作系统,可以将$(pwd)
修改为具体的绝对目录。 - 安装MongoDB扩展,并将mongodb.so复制到/code目录。
- 登录函数计算控制台,在左侧导航栏,单击服务及函数。
- 在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务。
- 在目标服务页面,单击目标函数,在函数代码页签中的函数入口文件同级目录下创建extension文件夹。说明 您创建的extension文件夹需和bootstrap在同一级别。
- 将mongodb.so文件添加至extension文件夹内,并在extension文件夹内创建mongodb.ini文件。
- 编写mongodb.ini文件。将以下内容填写至mongodb.ini文件中,并保存。
extension=/code/extension/mongodb.so
如果需要安装其他自定义扩展,请按需单击下方链接,直接下载文件。