2 つのコントローラーで何かを行う必要がある場合は、それをサービスにするのが最善です。その後、両方で使用できます。サービスの作成に関するSilex のドキュメントは次のとおりです。
最初にクラスを作成する必要があります。
class MyFirstService
{
public function getFoo()
{
return "foo";
}
}
次に、(共有) サービスとして登録します。
$app["my-first-service"] = $app->share(function () {
return new MyFirstService();
});
最後に、それを使用できます:
$app->get('links', function() use ($app) {
$foo = $app["my-first-service"]->getFoo();
})->bind('a1');
$app->get ('/links/result/', function() use ($app) {
$foo = $app["my-first-service"]->getFoo();
})->bind('b2');
上記のリンクされたドキュメント ページには、他のサービスにアクセスする方法も記載されています。