如何在symfony2中访问自定义类?

时间:2013-05-13 10:32:19

标签: php symfony

我创建了一个自定义类,其中包含很少的方法。 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的控制器中使用这个类方法?

1 个答案:

答案 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

有关详细信息,请参阅Best practice on Bundles structure of Symfony2