更新时间:2025-06-28 gmt 08:00

php函数开发概述-j9九游会登录

functiongraph目前支持以下php运行环境。

  • php 7.3
  • php 8.3

php函数接口定义

php函数的接口定义如下所示:

function handler($event, $context)
  • 入口函数名($handler):入口函数名称, 需和函数执行入口处用户自定义的入口函数名称一致。
  • 执行事件($event):函数执行界面由用户输入的执行事件参数, 格式为json对象。
  • 上下文环境($context):runtime提供的函数执行上下文,其接口定义在sdk接口说明。
  • 函数执行入口: index.handler。

php函数的函数执行入口参数格式为:[文件名].[函数名],请参考函数执行入口通过functiongraph控制台进行配置或修改。

php的initializer入口介绍

关于函数初始化入口initializer的具体介绍请参考函数初始化入口initializer

php函数的initializer格式为:[文件名].[initializer名]

示例:创建函数时指定的initializer为main.my_initializer,那么functiongraph会去加载main.php中定义的my_initializer函数。

在函数工作流服务中使用php实现initializer接口,需要定义一个php函数作为initializer入口,一个最简单的initializer示例如下。

  • 函数名

    my_initializer需要与实现initializer接口时的initializer字段相对应。

    示例:实现initializer接口时指定的initializer入口为main.my_initializer,那么functiongraph会去加载main.php中定义的my_initializer函数。

  • context参数

    context参数中包含一些函数的运行时信息,例如:request id、临时accesskey、function meta等。

sdk接口

context类中提供了许多上下文方法供用户使用,其声明和功能如所示。

表1 context类上下文方法说明

方法名

方法说明

getrequestid()

获取请求id。

getremainingtimeinmilliseconds ()

获取函数剩余运行时间。

getaccesskey()

获取用户委托的accesskey(有效期24小时),使用该方法需要为函数配置委托。

当前函数工作流已停止维护runtime sdk 中getaccesskey接口,您将无法使用getaccesskey获取临时ak。

getsecretkey()

获取用户委托的secretkey(有效期24小时),使用该方法需要为函数配置委托。

当前函数工作流已停止维护runtime sdk 中getsecretkey接口,您将无法使用getsecretkey获取临时sk。

getsecurityaccesskey()

获取用户委托的securityaccesskey(有效期24小时),缓存时间为10分钟,即10分钟内再次获取的返回内容相同,使用该方法需要为函数配置委托。

getsecuritysecretkey()

获取用户委托的securitysecretkey(有效期24小时),缓存时间为10分钟,即10分钟内再次获取的返回内容相同,使用该方法需要为函数配置委托。

getsecuritytoken()

获取用户委托的securitytoken(有效期24小时),缓存时间为10分钟,即10分钟内再次获取的返回内容相同,使用该方法需要为函数配置委托。

getuserdata(string key)

通过key获取用户通过环境变量传入的值。

getfunctionname()

获取函数名称。

getrunningtimeinseconds ()

获取函数超时时间。

getversion()

获取函数的版本。

getmemorysize()

分配的内存。

getcpunumber()

获取函数占用的cpu资源。

getpackage()

获取函数组。

gettoken()

获取用户委托的token(有效期24小时),使用该方法需要为函数配置委托。

getlogger()

获取context提供的logger方法,返回一个日志输出类,通过使用其info方法按“时间-请求id-输出内容”的格式输出日志。

如调用info方法输出日志:

logg = context.getlogger()$

$logg->info("hello")

getalias()

获取函数的别名

相关文档

网站地图