Symfony控制器中动作的含义

Kar*_*ran 6 php symfony

我是Symfony Framework的新手。我在Symfony中启动了简单项目。我在Controller中定义了一个函数,例如

public function sampleAction()
{

}
Run Code Online (Sandbox Code Playgroud)

这里的动作是什么意思?

Blu*_*ueM 5

只是一个惯例(在其他框架(例如ZF)中)也将后缀“ Action”添加到控制器中通过路由直接公开的那些方法的名称中,以使此类操作与其他方法更好地区分开。

从技术上讲,“动作”根本没有含义,即:由于存在此后缀,因此该方法的行为不会有所不同。您还可以定义如下的操作方法:

/**
 * @Route("/", name="homepage")
 *
 * @return \Symfony\Component\HttpFoundation\Response
 */
public function index()
{
    // ...
}
Run Code Online (Sandbox Code Playgroud)

Symfony不会强迫您使用该后缀,但我强烈建议您遵循此约定。

  • “不要在控制器动作的方法中添加动作后缀。”:https://symfony.com/doc/current/best_practices/controllers.html (2认同)