我完全是关于symfony 2的最佳实践,我想将一个php库集成到项目中。库是一个非捆绑包,一个简单的 php 类,带有一些方法。
我的问题只是遵循以下内容,它没有被接受的答案。无论如何,从我在这里读到的内容来看,我决定自动加载该类,但不知道我应该在哪里找到 php 文件。
也许src/MyBundle/DependencyInjection/
?我真的很怀疑,因为图书馆不依赖于我拥有的其他服务。
我应该创建一个像src/MyBundle/Services/
或src/MyBundle/Libraries/
这样的目录吗?
这里的最佳实践是什么?
如 b.enoit.be 所述,从类创建服务。
MyBundle/Service/MyServiceClass.php
<?php
namespace MyBundleService;
class MyService
{
...
}
app/config/services.yml
services:
app.my_service:
class: MyBundleServiceMyService
例如在控制器中使用它
MyBundle/Controller/DefaultController.php
<?php
namespace MyBundleController;
use SymfonyBundleFrameworkBundleControllerController;
use SymfonyComponentHttpFoundationRequest;
class DefaultController extends Controller
{
public function indexAction(Request $request)
{
...
// get the service from the container
$yourService = $this->get('app.my_service');
...
}
}
?>