| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 | <?phptry {    $app = new Phalcon\Mvc\Micro();    // Setting up the database connection    $app['db'] = function() {        return new \Phalcon\Db\Adapter\Pdo\Mysql(array(            'dsn'       => 'host=localhost;dbname=hello_world;charset=utf8',            'username'   => 'benchmarkdbuser',            'password'   => 'benchmarkdbpass',            'persistent' => true        ));    };    // Setting up the view component (seems to be required even when not used)    $app['view'] = function() {        $view = new \Phalcon\Mvc\View();        $view->setViewsDir(__DIR__ . '/../views/');        $view->registerEngines(array(            ".volt" => function($view, $di) {                $volt = new \Phalcon\Mvc\View\Engine\Volt($view, $di);                $volt->setOptions(array(                    "compiledPath" => __DIR__ . "/../compiled-templates/",                    "compiledExtension" => ".c",                    "compiledSeparator" => '_',                ));                return $volt;            }        ));        return $view;    };    $app->map('/json', function() {        header("Content-Type: application/json");        echo json_encode(array('message' => 'Hello, World!'));    });    //    $app->map('/db', function() use ($app) {        $db = $app['db'];        $queries = $app->request->getQuery('queries', null, 1);        $worlds = array();        for ($i = 0; $i < $queries; ++$i) {            $worlds[] = $db->fetchOne('SELECT * FROM world WHERE id = ' . mt_rand(1, 10000), Phalcon\Db::FETCH_ASSOC);        }        if ($queries == 1) {            $worlds = $worlds[0];        }        echo json_encode($worlds);    });    // /fortunes    $app->map('/fortunes', function() use ($app) {        $fortunes = $app['db']->query('SELECT * FROM fortune')->fetchAll();        $fortunes[] = array(            'id' => 0,            'message' => 'Additional fortune added at request time.'        );        usort($fortunes, function($left, $right) {            $l = $left['message'];            $r = $right['message'];            if ($l === $r) {                return 0;            } else {                if ($l > $r) {                    return 1;                } else {                    return -1;                }            }        });        header("Content-Type: text/html; charset=utf-8");        echo $app['view']->getRender('bench', 'fortunes', array(            'fortunes' => $fortunes        ));    });    $app->handle();} catch(\Phalcon\Exception $e) {    echo "PhalconException: ", $e->getMessage();}
 |