控制器中未定义的索引(CakePhp)
我有以下代码,根据id从表“products”中选择product控制器中未定义的索引(CakePhp),cakephp,Cakephp,我有以下代码,根据id从表“products”中选择product public function p_details(){ $productIdNum = $this->params['detailID']; //$this->Product->read(null, $productIdNum); if(Validation::naturalNumber($productIdNum) == true){ $itemB
public function p_details(){
$productIdNum = $this->params['detailID'];
//$this->Product->read(null, $productIdNum);
if(Validation::naturalNumber($productIdNum) == true){
$itemById = $this->Product->find('all', array('conditions' =>
array('Product.id' => $productIdNum)));
if(count($itemById) > 0){
$this->set('itemDetails', $itemById['Product']['id']);
}
}
}
但是当我试图在视图中打印变量“$itemDetails”时,
像
这给了我一个错误:
未定义索引:产品。如果我改成这个
像
它仍然会给我相同的错误:未定义索引:name。
我无法理解这一点。问题是,
$this->set('itemDetails',$itemById['Product']['id'])
为itemDetails
变量分配一个id,而不是数组。将其更改为$this->set('itemDetails',$itemById)代码>,它应该可以工作。下次获取索引未找到错误时,可能会出现重复的错误,您可以执行调试($array)查看视图中的代码>以查看数组实际包含的内容。感谢您的回复。后来我也注意到了这一点,尽管我花了将近一个小时才弄明白:)无论如何,谢谢你的回复