本文介绍在函数计算中使用PHP语言编写函数的运行环境信息。
PHP运行时
函数计算目前支持的PHP运行环境如下:
PHP版本  | 操作系统  | 架构  | 
PHP 7.2  | Linux  | x86_64  | 
PHP内置库
函数计算的PHP运行环境中自带了一些常用库(Package)供您直接使用,目前包含的内置库如下所示。
Package  | 版本  | 内置库介绍  | 
oss  | v2.4.3  | |
tablestore  | v4.1.1  | |
mns  | v1.3.5.5  | |
fc  | v1.2.1  | 
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目录。
执行以下命令,在容器内安装MongoDB扩展。
pecl install mongodb执行以下命令,找到ZIP扩展。
find /usr -name "mongodb.so"执行以下命令,复制扩展文件到/code目录即拷贝到本地机器的目录。
cp /usr/local/lib/php/extensions/no-debug-non-zts-20170718/mongodb.so /code执行以下命令,退出容器。
exit执行以下命令,确认是否存在mongodb.so文件,若存在则证明SO文件已经存在本地。
ls预期输出如下。
mongodb.so
- 登录函数计算控制台,在左侧导航栏,单击服务及函数。
 - 在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务。
 在目标服务页面,单击目标函数,在函数代码页签中的函数入口文件同级目录下创建extension文件夹。
将mongodb.so文件添加至extension文件夹内,并在extension文件夹内创建mongodb.ini文件。
编写mongodb.ini文件。
将以下内容填写至mongodb.ini文件中,并保存。
extension=/code/extension/mongodb.so
如果需要安装其他自定义扩展,请按需单击下方链接,直接下载文件。