如何在cakephp中从控制器获取数据
上面是控制器 如何使用CAKEPHP获取视图中的cfa数据?将脚本修改为如何在cakephp中从控制器获取数据,php,cakephp,cakephp-2.x,Php,Cakephp,Cakephp 2.x,上面是控制器 如何使用CAKEPHP获取视图中的cfa数据?将脚本修改为 $this->loadModel('Siteconfig'); $data=$this->Siteconfig->find('all'); foreach($data as $data) { $email=$data['Siteconfig']['email']; $companyname=$data['Siteconfig']['companyname'];
$this->loadModel('Siteconfig');
$data=$this->Siteconfig->find('all');
foreach($data as $data)
{
$email=$data['Siteconfig']['email'];
$companyname=$data['Siteconfig']['companyname'];
$cfa=$data['Siteconfig']['cfa'];
}
这会解决它的。您的foreach正在重新分配$data。在控制器方法中,您可以使用此
$this->loadModel('Siteconfig');
$data=$this->Siteconfig->find('all');
$cfa = '';
foreach($data as $datum)
{
$email=$datum['Siteconfig']['email'];
$companyname=$datum['Siteconfig']['companyname'];
$cfa=$datum['Siteconfig']['cfa'];
}
$this->set('view_cfa',$cfa);
您还可以一次向视图发送多个变量
$this->set('var_name_in_view', $cfa); //You will find the variable $cfa as $var_name_in_view in your view(You have to use $var_name_in_view in view)
Compact生成一个数组,将变量名作为键,将变量值作为数组键的值
尝试相同显示错误通知(8):未定义变量:cfa[APP/View/shipping/add.ctp,第306行]契约中的变量必须与变量名相同(仅不包括$sign)。该错误可能是因为如果$data为null,则$cfa将未定义,从而导致错误。你的问题我改了,请看一下@MohamedTried同样显示错误通知(8):未定义变量:cfa[APP/View/shipping/add.ctp,第306行]–我修改了答案,现在检查。
foreach($data as$data)
无效。您需要使用不同的变量来表示$data
数组中的每个项目。在修复该问题之后,$email
、$companyname
和$cfa
将在foreach循环的每个迭代中被覆盖。
$this->set(compact('cfa', 'another_variable')); //You can acceess using $cfa and $another_variable