0

ルーティングにはフライト 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')

さまざまなバリアントを試しましたが、エラーが発生しました。

4

1 に答える 1

0

medooflightはわかりませんが、匿名関数を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');
于 2016-10-05T19:24:29.883 に答える