Silex Pimple服务实施

时间:2013-03-16 14:58:24

标签: silex pimple

在我的Silex应用程序中,我需要一个基本上执行file_get_contents()的功能,我的想法是使用像

这样的东西
$app['funky_service'] = function () {
$content = file_get_contents();
return $content;
}

这工作正常,但我如何将参数传递给此函数?我可以这样称呼它

$fs = $app['funky_service'];

但是传递参数仍然令我感到困惑

1 个答案:

答案 0 :(得分:4)

根据the services chapter in the silex documentation,如果要将其存储为参数,则需要保护您的功能:

$app['function_parameter'] = $app->protect(function ($resource) {
    $content = file_get_contents($resource);
    return $content;
});

$example = $app['function_parameter']('http://example.com');