如何从动作中调用控制器方法
How to call a controller method from an action
我是 CakePHP 的新手,我想在 CakePHP 3 的操作中使用一个方法(returns 一个值)。有点像这样:
public function specify(){
if(isObject1){
// do something}
}
private isObject1($objname){
return true;
}
正确的语法是什么?
蛋糕PHP是PHP
从相同 class 的另一个方法调用方法的方法与使用对象的任何 php 项目相同 - 通过使用 $this
:
public function specify() {
$something = 'define this';
if($this->isObject1($something)) {
// do something
}
}
private function isObject1($objname) {
return true;
}
在 The PHP manual 中有更多关于如何使用对象的信息。
@AD7six 的回答建议在控制器中添加一个方法,如果它不被用作动作,这是不正确的。
我认为您应该考虑在 vendor 下创建 classes 并将它们包含在您的控制器中并调用您的 class/method。约定是 vendor/$author/$package。您可以使用 composer 自动加载它们或使用 require 调用来包含您的文件。如果你不想创建一个 class 而只想拥有功能,那也可以做到。
一定要看看 cakephp 的 loading vendor files 部分。
我是 CakePHP 的新手,我想在 CakePHP 3 的操作中使用一个方法(returns 一个值)。有点像这样:
public function specify(){
if(isObject1){
// do something}
}
private isObject1($objname){
return true;
}
正确的语法是什么?
蛋糕PHP是PHP
从相同 class 的另一个方法调用方法的方法与使用对象的任何 php 项目相同 - 通过使用 $this
:
public function specify() {
$something = 'define this';
if($this->isObject1($something)) {
// do something
}
}
private function isObject1($objname) {
return true;
}
在 The PHP manual 中有更多关于如何使用对象的信息。
@AD7six 的回答建议在控制器中添加一个方法,如果它不被用作动作,这是不正确的。
我认为您应该考虑在 vendor 下创建 classes 并将它们包含在您的控制器中并调用您的 class/method。约定是 vendor/$author/$package。您可以使用 composer 自动加载它们或使用 require 调用来包含您的文件。如果你不想创建一个 class 而只想拥有功能,那也可以做到。
一定要看看 cakephp 的 loading vendor files 部分。