Request handler for a function in PHP
A request handler is a method used to process each PHP function call. When creating a function version, you should must the entry point that consists of the file name and the request handler name, e.g., index.myFunction.
Note
At any given time, a single function instance processes only one request. This allows you to use global variables without the need to ensure data integrity control.
When calling the handler, the runtime provides the following arguments:
-
Request body (the
eventparameter).If the request body is a JSON document, it will be converted into
Arrayusing thejson_decodemethod. -
Invocation context (the
contextparameter).The context provides all required information about the function version. The structure of this object is described in PHP function invocation context.
The handler is a function that is declared in the global namespace and takes two arguments.
To return the execution result, use the return statement or throw an exception using the throw statement.
Examples
HTTP request structure output
The following function outputs the request structure and invocation context to both the execution log and function response:
<?php
function myHandler ($event, $context) {
$resp = [
'event' => $event,
'context' => $context,
];
return [
'statusCode' => 200,
'body' => json_encode($resp),
];
}
Synchronous handler
The function returns either a prepared response or an error:
<?php
function myHandler ($event, $context) {
$message = "not lucky";
if (rand() % 2 == 0) {
$message = "lucky one";
}
return [
'statusCode' => 200,
'headers' => [
'Content-Type' => 'text/plain',
],
'body' => $message,
];
}