cakephp动态加载组件
我想在cakePHP中动态加载组件 在本例中,为json响应动态加载RequestHandler组件cakephp动态加载组件,php,cakephp,Php,Cakephp,我想在cakePHP中动态加载组件 在本例中,为json响应动态加载RequestHandler组件 public function xyz() { $this->components[] ='RequestHandler'; $this->Components->load('RequestHandler'); $this->RequestHandler->initialize($this); $abc = array("hell
public function xyz() {
$this->components[] ='RequestHandler';
$this->Components->load('RequestHandler');
$this->RequestHandler->initialize($this);
$abc = array("hello","world");
$this->set('abc', $abc);
$this->set('_serialize', array( 'abc'));
}
初始化函数时生成的错误显示未定义
更清晰的图片修订:
我也试过了
public function xyz() {
$this->RequestHandler = $this->Components->load('RequestHandler');
$abc = array("hello","world");
$this->set('abc', $abc);
$this->set('_serialize', array( 'abc'));
}
我不能使用这样的组件$this->RequestHandler->getTime;因为cakephp自动处理json响应。
当我使用
{代码:500,url:/resources/xyz.json,名称:查看文件
/缺少var/www/disecake/app/View/Resources/xyz.ctp。}
当我使用
public $components = array( 'RequestHandler');
在我的电脑里比输出还多
{"abc":["hello","world"]}
我想现在问题更清楚了。CakePHP书中有一个章节叫做动态加载组件 CakePHP 2.x: CakePHP 3.x:
这与您尝试的方式不同CakePHP书中有一个章节叫做动态加载组件 CakePHP 2.x: CakePHP 3.x:
它的执行方式与您尝试的方式不同初始化函数生成的错误显示未定义。谢谢,不客气。请不要了,谢谢questions@EliasVanOotegem-常见问题已不在我们之中。我们现在有了一个帮助中心。您能编辑问题并使用剪贴板复制和粘贴准确的错误消息吗?初始化函数生成的错误显示未定义。谢谢,不客气。请不要了,谢谢questions@EliasVanOotegem-常见问题已不在我们之中。我们现在有了一个帮助中心。您能编辑问题并使用剪贴板复制和粘贴准确的错误消息吗?关于文档,您是对的。但我亲爱的朋友,这份文件并没有如预期的那样有效。在我的例子中,我需要json响应,并且我遵循您给定的文档说明,它显示相关视图xyz.ctp不存在。若我通过在控制器顶部定义来加载RequestHandler组件,它将提供正确的输出。我想你明白我的问题了。请注意,在你给定的文档和我的代码中,在你的文档中使用了$this->OneTimer->getTime;但在我的例子中,cakePHP会自动将该组件用于输出。@AmitKumarSharma您的问题是如何动态加载该组件,而不是如何返回JSON数据。如果您在JSON方面遇到问题,请问一个新的、更相关的问题。我可以使用$this->response手动返回数据。但我想使用组件,该组件需要处于动态状态,因为我的控制器只有一个功能会使用它component@AmitKumarSharma-对。这就是为什么您应该按照CakePHP手册中的说明来阅读我的答案/链接。关于文档,您是对的。但我亲爱的朋友,这份文件并没有如预期的那样有效。在我的例子中,我需要json响应,并且我遵循您给定的文档说明,它显示相关视图xyz.ctp不存在。若我通过在控制器顶部定义来加载RequestHandler组件,它将提供正确的输出。我想你明白我的问题了。请注意,在你给定的文档和我的代码中,在你的文档中使用了$this->OneTimer->getTime;但在我的例子中,cakePHP会自动将该组件用于输出。@AmitKumarSharma您的问题是如何动态加载该组件,而不是如何返回JSON数据。如果您在JSON方面遇到问题,请问一个新的、更相关的问题。我可以使用$this->response手动返回数据。但我想使用组件,该组件需要处于动态状态,因为我的控制器只有一个功能会使用它component@AmitKumarSharma-对。这就是为什么您应该按照CakePHP手册中的说明来阅读我的答案/链接。 {"abc":["hello","world"]}