如何通过 agi php 写入文件?

How can I write to files through an agi php?

我正在php中为asterisk创建一个agi,很简单,我想做的是将文本保存在文件中,但是,当我执行计划拨号时,agi不保存文件

我的asterisk版本是13.8.3,这个运行超过ubuntu18,我的php版本是7.2

#!/usr/bin/php -q
<php
    $agivars = array();
    while(!feof(STDIN)) {
        $agivar = trim(fgets(STDIN));
        if($agivar === '') {
            break;
        }
        $agivar = explode(':', $agivar);
        $agivars[$agivar[0]] = $agivar[1];
    }
    echo "Verbose beforeSave\n";
    file_put_contents("/a.txt", "helloWorld");
    echo "Verbose afterSave\n";
?>

我希望在 /dir

中有一个名为 a.txt 的文件

请注意,在大多数系统上,asterisk 运行 在 asterisk 用户下,它不能写入 root 拥有的文件。

所以请检查您的权限。

也不需要自己写AGI代码,使用phpagi工程。