是否可以在 Controller 中创建标准函数?

is it possible to create a standard function inside a Controller?

直到现在,我都在我的所有控制器中创建动作:

<?php

use Phalcon\Mvc\Controller;

class RestaurantLivraisonController extends Controller
{

    public function indexAction(){
       ...
    }
}
?>

但是是否可以在控制器中创建函数而不是动作?

是的,是的。就像在任何其他普通 PHP class.

中一样,只需在其中创建一个方法(classes 中的函数称为方法)

这是可能的,因为 Phalcon 的路由机制总是尝试将当前 URL 与控制器 class 中的操作(即特定方法)匹配并执行它。不管它是否找到一个,它都不会关心那里的任何其他方法。

换句话说,Controller class 中的方法如果是路由目标(并且后缀为 "Action")也是一个动作。您可以从操作中调用自定义方法。

另外,如果它们不是行动恕我直言,您应该将它们设置为私有。