如何从Phalcon PHP框架中的另一个控制器调用函数。以下是CakePHP http://sherwinrobles.blogspot.com/2013/02/cakephp-calling-function-from-other.html
的示例答案 0 :(得分:5)
根据您提供的链接,据我所知,没有直接的方法使用请求对象在另一个控制器中调用函数。然而,实例化控制器并调用该函数将在CakePHP中正常工作
$newController = new \MyNS\Controllers\NewController();
$newController->myFunc();
如果您需要,可以在控制器内使用静态功能并调用它
\MyNS\Controllers\NewController::myFunc();
答案 1 :(得分:0)
这已经过测试
对于不使用CakePHP的人 另一种执行此操作的方法是创建一个辅助文件夹并编写操作(在这种情况下为方法)。
public / index.php
添加路径助手
$loader->registerDirs(
[
APP_PATH . '/helper/'
]
);
在应用中添加帮助订单
└── apps
├── controllers
└─ exampleController.php
├── models
└── helpers
└─ myHelper.php
...
在myHelper.php
<?php
use Phalcon\Di\Injectable;
class myHelper extends Injectable
{
function myNameFunction() {
// here you should write your function
}
}
在exampleController中要调用其他动作的地方,在这种情况下为函数
<?php
use Phalcon\Mvc\Controller;
class exampleController extends Controller {
public function yourAction() {
//your code
//there are 2 ways of calling the function. either use this one
$myHelper = new myHelper();
$myHelper->myNameFunction();
//or this one
(new UnmatchHelper())->myNameFunction();
}
}