跳到主要内容

云函数引入 php-sdk 快速教程

准备工作#

npm i -g @cloudbase/cli
  • 登录云开发
cloudbase login
  • 进入当前 php 项目根目录下进行初始化
cloudbase init --without-template
  • 在 php 项目根目录下创建 functions 文件夹存放云函数,进入 functions 文件夹并新建 phpTest 云函数

  • phpTest 云函数中新建并编辑入口文件 index.php 如下
<?php
function main_handler($event, $context){  require_once __DIR__ . DIRECTORY_SEPARATOR . 'tcb-php-sdk' . DIRECTORY_SEPARATOR . 'autoload.php';  $tcb = new TencentCloudBase\TCB(array("secretId" => "xxx", "secretKey" => "xxx"));
  print($tcb)  // your code
 return 'helllo world'}
  • phpTest 云函数中编辑 composer.json 如下
{  "require": {    "tencentcloudbase/tcb-php-sdk": "1.0"  }}
  • 配置

cloudbase init 之后会创建云开发的配置文件 cloudbaserc.json,可在配置文件的 plugins 里修改和写入插件配置

{  "envId": "xxx", // 替换为开发者自己的envId  "framework": {    "plugins": {      "function": {        "use": "@cloudbase/framework-plugin-function",        "inputs": {          "functionRootPath": "./functions",          "functions": [            {              "name": "phpTest",              "timeout": 60,              "envVariables": {},              "runtime": "Php7",              "memorySize": 128,              "handler": "index.main_handler"            }          ]        }      }    }  }}

云函数部署#

php 项目根目录下一键部署

cloudbase framework:deploy

云函数调用#

  • 进入小程序开发者工具,同步云函数列表,可以看到列表中有上传的云函数 phpTest,编写云函数调用代码

示例代码

wx.cloud  .callFunction({    name: "phpTest",    data: {}  })  .then((res) => {    console.log(res);  })  .catch((err) => {    console.error(err);  });