私はPHPでクラインルーターを実装していますが、少し問題があります... 私のコントローラから特別な関数を呼び出して、$ request変数このように:捕捉されないInvalidArgumentExceptionを::PHPクラインルーターコール特別コントローラ関数
$klein->respond('GET', '/[i:id]?', HomeController::view($request));
しかし、私はエラーを持っている呼び出し可能と予想されます。
$klein->respond('GET', '/[i:id]?', new HomeController::view($request));
、今エラーはこの1つである::だから私は自分のコードを変更しuncallable NULL を手に入れた構文エラー、予期しない 'ビュー'(T_STRING)、変数が想定(T_VARIABLE)または '$' は最後に、私はこのように私のコードを足す解決策が見つかりました:これは1が動作しているが、私は、私は何かが欠けてる感じ
$klein->respond('GET', '/[i:id]?', function($request){ HomeController::view($request); });
...私はこれを因数分解したいと思いますが、どんな解決策はありますか?あなたの第三の例では、我々は閉鎖、または匿名関数、またはラムダを渡す、または任意の他、あなたがしたいているように、クラインの例では
$klein->respond('GET', '/[i:id]?', array('HomeController','view'));
: おかげであなた
私は決してクラインを使用しませんでした: 'public static method view($ request){...}'を持つ* HomeController *というクラスがありますか? –
はい、私は残念ですが、おそらく私はプラグインの作者に直接質問する必要があります...実際には私の質問は 'それを分解することは可能です'なので、私はそれを働かせる方法を見つけました... –