EventHttp::setCallback Définit une fonction de rapppel pour une URI spécifique &reftitle.description; public void EventHttp::setCallback string path string cb string arg Définit une fonction de rapppel pour une URI spécifique. &reftitle.parameters; path L'URI pour laquelle la fonction de rappel doit être invoquée. cb La fonction de rappel callable qui sera invoquée lors d'une demande sur l'URI path. Elle doit correspondre au prototype suivant : void callback EventHttpRequest req NULL mixed arg NULL req Un objet EventHttpRequest. arg Données personnalisées. arg Données personnalisées. &reftitle.returnvalues; &return.success; &reftitle.examples; Exemple avec <function>EventHttp::setCallback</function> = $max_requests) { echo "Counter reached max requests $max_requests. Exiting\n"; exit(); } echo __METHOD__, " called\n"; echo "request:"; var_dump($req); echo "data:"; var_dump($data); echo "\n===== DUMP =====\n"; echo "Command:", $req->getCommand(), PHP_EOL; echo "URI:", $req->getUri(), PHP_EOL; echo "Input headers:"; var_dump($req->getInputHeaders()); echo "Output headers:"; var_dump($req->getOutputHeaders()); echo "\n >> Sending reply ..."; $req->sendReply(200, "OK"); echo "OK\n"; echo "\n >> Reading input buffer ...\n"; $buf = $req->getInputBuffer(); while ($s = $buf->readLine(EventBuffer::EOL_ANY)) { echo $s, PHP_EOL; } echo "No more data in the buffer\n"; } function _http_about($req) { echo __METHOD__, PHP_EOL; echo "URI: ", $req->getUri(), PHP_EOL; echo "\n >> Sending reply ..."; $req->sendReply(200, "OK"); echo "OK\n"; } function _http_default($req, $data) { echo __METHOD__, PHP_EOL; echo "URI: ", $req->getUri(), PHP_EOL; echo "\n >> Sending reply ..."; $req->sendReply(200, "OK"); echo "OK\n"; } $port = 8010; if ($argc > 1) { $port = (int) $argv[1]; } if ($port <= 0 || $port > 65535) { exit("Invalid port"); } $base = new EventBase(); $http = new EventHttp($base); $http->setAllowedMethods(EventHttpRequest::CMD_GET | EventHttpRequest::CMD_POST); $http->setCallback("/dump", "_http_dump", array(4, 8)); $http->setCallback("/about", "_http_about"); $http->setDefaultCallback("_http_default", "custom data value"); $http->bind("0.0.0.0", 8010); $base->loop(); ?> ]]> &example.outputs.similar; &reftitle.seealso; EventHttp::setDefaultCallback