我创建了一个自定义类,其中包含很少的方法。 e.g。
class MyClass{
method1 ();
method2();
}
现在我想创建这个类的对象并在控制器方法中使用它
类DefaultController {
public function myAction()
{
//here I want to able to create object of MyClass, is it possible?
}
}
Q1。我应该在symfony2结构中存储这个类,例如在src dir里面?
Q2。如何在bundle的控制器中使用这个类方法?
答案 0 :(得分:1)
如果你把你的课程放在src文件夹中,它将被自动加载,即:你可以这样做:
$foo = new \MyClass();
$foo->method1();
控制器中的。
一个好的方法是将你的课程放在你可能会使用它们的Bundle中:
src/YourCompany/YourBundle/MyClass.php
但是,不要忘记将名称空间声明放在MyClass文件的顶部:
namespace YourCompany\YourBundle;
class MyClass{
//..
}
您可以将类放在捆绑包的基本文件夹中,也可以使用其他嵌套文件夹来更好地区分一组类,例如:
src/YourCompany/YourBundle/Listener/MyClassListener.php
src/YourCompany/YourBundle/Manager/MyClassManager.php