我正在尝试使用飞行PHP框架进行路由,并使用medoo框架进行数据库使用。
//connect database
$database = new medoo([
'database_type' => 'sqlite',
'database_file' => 'db.sqlite'
]);
//my function
function database($database){
$database->insert("ppl", [
"fn" => "joe","ln"=>"doe"]);
}
//
Flight::route('/add/', array(database($database)));
如何使用来自这个地方的参数调用我的函数:
Flight::route('/add/','database')
尝试了不同的变种,但却遇到了错误。
答案 0 :(得分:0)
我不知道 medoo 或航班,但您可以使用use
的匿名函数:
Flight::route('/add/',
function() use($database) {
$database->insert("ppl", ["fn"=>"joe","ln"=>"doe"])
});
我认为你需要将其重新构建为一种OOP样式,使其更容易和模块化,但如果在全局范围内定义了$database
,那么就会陷入困境:
function database() {
$GLOBALS['database']->insert("ppl", ["fn"=>"joe","ln"=>"doe"]);
}
Flight::route('/add/', 'database');