<?php require '../vendor/autoload.php'; $server = new CapMousse\ReactRestify\Server("HelloWorldServer", "0.0.0.1"); $server->get('/hello/{name}', function ($request, $response, $next) { $response->write("Hello " . $request->name); next(); }); $runner = new CapMousse\ReactRestify\Runner($server); $runner->listen("1337");
<?php require '../vendor/autoload.php'; $server = new CapMousse\ReactRestify\Server("HelloWorldServer", "0.0.0.1"); $server->get('/hello/[name]:any', function ($request, $response, $args) { $response->write("Hello " . $args['name']); }); $runner = new CapMousse\ReactRestify\Runner($server); $runner->listen("1338", "127.0.0.1");
require 'inc/DB.php'; require 'inc/Indexer.php'; require 'inc/IndexerNodeTraverserVisitor.php'; require 'inc/Completions.php'; date_default_timezone_set('America/Montreal'); if (count($argv) !== 3) { echo "Usage: port path\n"; exit; } $db = new DB(__DIR__ . '/indexes/' . md5(realpath($argv[2])) . '.sqlite'); $php_db = new DB(__DIR__ . '/indexes/php.sqlite'); $indexer = new Indexer(realpath($argv[2]), $db); $indexer_php = new Indexer(__DIR__ . '/phpstorm-stubs', $php_db); $server = new CapMousse\ReactRestify\Server('PHP Autocomplete', '0.0.1'); $server->get('/index', function ($request, $response, $next) use($indexer) { $response->write(json_encode(array('status' => $indexer->status, 'last_indexed_file' => $indexer->last_indexed_file))); $next(); }); $server->post('/index', function ($request, $response, $next) use($indexer) { echo "Starting index...\n"; $next(); $indexer->index(); echo "Index complete.\n"; }); $server->post('/reindex', function ($request, $response, $next) use($indexer) { echo "Starting reindex...\n"; if ($request->file) { $file = realpath($request->file); $indexer->delete_file_index($file); $indexer->index_file($file); } else { $indexer->delete_index();
<?php require '../vendor/autoload.php'; $server = new CapMousse\ReactRestify\Server("SmallTodoServer", "0.0.0.1"); $todoList = array(array("name" => "Build a todo list example", "value" => "done")); //List all todo $server->get('/', function ($request, $response, $next) use(&$todoList) { $response->writeJson((object) $todoList); $next(); }); //Create a new todo $server->post('/', function ($request, $response, $next) use(&$todoList) { if (!$request->name) { $response->setStatus(500); return $next(); } $todoList[] = ["name" => $request->name, "value" => "waiting"]; $id = count($todoList) - 1; $response->writeJson((object) array("id" => $id)); $next(); })->after(function ($request, $response, $route) use(&$todoList) { echo "\nA new todo as been created at id " . (count($todoList) - 1); }); $server->group('todo', function ($routes) use(&$todoList) { //Get a single todo $routes->get('{id}', function ($request, $response, $next) use(&$todoList) { if (!isset($todoList[$request->id])) { $response->setStatus(404); return $next(); } $response->writeJson((object) $todoList[$request->id]);