Azure Function App - 输出到队列 PHP

Azure Function App - Output to queue in PHP

最近正在研究 Azure Functions 的使用。

假设您配置 PHP Azure Functions 一个输入,由 Azure Message Queue 触发,输出到另一个 Azure Message Queue。

虽然触发器工作,接收到消息并且代码完美执行,但我一直无法确定一种传递输出的方法,该输出随后被加载到输出消息队列中。

我尝试了一系列;

    return $variable;
    $variable = $OutputVariableName;
    putenv("OutputVariableName=$OutputVariableName");
    $return = $OutputVariableName; //assuming you've configured this in output settings

似乎没有任何结果导致输出被转储到配置的 Azure 消息队列中。

想法?认识到带有 PHP 的 Azure Functions 是实验性的。

干杯,

T

您可以使用 file_put_contents 函数将输出传递到输出消息队列。

run.php

<?php

  $inputMessage = file_get_contents(getenv('inputMessage'));
  $inputMessage = rtrim($inputMessage, "\n\r");
  fwrite(STDOUT, "PHP script processed queue message '$inputMessage'");

  file_put_contents(getenv('outputQueueItem'), $inputMessage);
?>

function.json

{
  "bindings": [
    {
      "name": "inputMessage",
      "type": "queueTrigger",
      "direction": "in",
      "queueName": "samples-php",
      "connection": "aaronchstorage_STORAGE"
    },
    {
      "type": "queue",
      "name": "outputQueueItem",
      "queueName": "outqueue",
      "connection": "aaronchstorage_STORAGE",
      "direction": "out"
    }
  ],
  "disabled": false
}