You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ProcessMaker 4社区版PHP脚本开发调试及资源咨询

ProcessMaker 4社区版PHP脚本任务常见问题解答

1. 调试PHP脚本与访问stdout/stderr

  • 直接用echo输出的stdout无法在ProcessMaker界面直接查看,建议用error_log()把调试信息写入系统日志,日志可在安装目录的storage/logs下找到,也能通过后台「系统日志」模块查看。
  • 捕获stderr可借助PHP错误处理机制,比如用set_error_handler()把错误信息转存到日志或流程变量里。
  • 更高效的调试方式是把数据存入流程变量:
    // 将调试内容写入自定义流程变量
    PM::setVariable('debug_info', print_r($your_data, true));
    
    脚本执行后,在流程实例的「变量」面板就能查看debug_info的内容。
  • 脚本任务执行完成后,还能在任务详情的「执行日志」里查看基础执行状态和报错信息。

2. 访问请求变量

  • 获取用户提交的表单请求参数,用ProcessMaker SDK的请求对象:
    // 获取单个请求变量
    $requestVar = PM::request()->get('your_form_field_name');
    // 获取所有请求变量
    $allRequestVars = PM::request()->all();
    
  • 访问流程实例的全局变量,用:
    $processVar = PM::getVariable('your_process_variable_name');
    

3. 访问流程已上传的文件

  • 上传的文件由ProcessMaker托管,通过字段名就能获取文件本地路径:
    // 获取上传文件的路径
    $filePath = PM::getUploadedFile('your_file_upload_field_name');
    // 读取文件内容
    $fileContent = file_get_contents($filePath);
    // 复制文件到指定位置
    copy($filePath, '/path/to/your/target/file');
    
  • 注意:your_file_upload_field_name要和流程设计时表单上传控件的名称完全一致。

优质资源推荐

  • ProcessMaker官方文档「脚本任务」章节:详细讲解SDK核心方法、脚本执行环境配置。
  • ProcessMaker社区论坛:搜索「PHP Script Task」能找到大量开发者分享的实战案例和调试技巧。
  • docker-executor-php仓库的examples目录:包含多个可复用的PHP脚本示例,覆盖变量操作、文件处理等场景。
  • 官方「Script Task Deep Dive」系列视频:直观演示脚本开发与调试的完整流程。

内容的提问来源于stack exchange,提问作者osantos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 10:05:22