无法将变量从控制器传递到 CodeIgniter 中查看
Can't pass variable from controller to view in CodeIgniter
我在尝试将变量从控制器传递到视图时遇到问题。我想我在某个地方做错了,我找不到它,因为我是新手。
我的控制器方法是:
public function paymentdetail($order_code)
{
$this->load->model('Payment_Model');
$paymentDetail = $this->Payment_Model->getpaymentdetail($order_code);
$orderDetail = $this->Payment_Model->getOrderDetail($order_code);
// echo print_r($paymentDetail);
$datas['content'] = $this->load->view('payment/paymentDetail',
array('paymentDetail' => $paymentDetail,
'orderDetail' => $orderDetail), true);
$this->load->view('layouts/main_template', $datas);
}
下面的模型函数 getpaymentdetail()
returns 一个数组 (result_array()) 而这正是我所关心的。如果我能解决这个问题,那么我也可以使用其他模型方法。
$this->Payment_Model->getpaymentdetail($order_code);
当我在视图文件 (PaymentDetail.php) 中键入 <?php echo $paymentDetail['column_name']; ?>
时,出现错误
Undefined index: column_name
为什么会出现此错误?
model function getpaymentdetail() returns an array (result_array())
这些数组的结构通常如下:
Array
(
[0] => Array
(
[ID] => 3120
[column_name] => col1
)
)
因此您无法通过 <?php echo $paymentDetail['column_name']; ?>
访问 column_name,因为您的数组结构中不存在此索引。
如果你将一个索引移得更深,那么它将起作用:<?php echo $paymentDetail[0]['column_name']; ?>
注意,如果您希望返回超过 1 行,以上将仅访问第一个结果(索引为 0)行!您需要一个 foreach 循环来获取所有结果,请参阅 Generating Query Results - result arrays
我在尝试将变量从控制器传递到视图时遇到问题。我想我在某个地方做错了,我找不到它,因为我是新手。
我的控制器方法是:
public function paymentdetail($order_code)
{
$this->load->model('Payment_Model');
$paymentDetail = $this->Payment_Model->getpaymentdetail($order_code);
$orderDetail = $this->Payment_Model->getOrderDetail($order_code);
// echo print_r($paymentDetail);
$datas['content'] = $this->load->view('payment/paymentDetail',
array('paymentDetail' => $paymentDetail,
'orderDetail' => $orderDetail), true);
$this->load->view('layouts/main_template', $datas);
}
下面的模型函数 getpaymentdetail()
returns 一个数组 (result_array()) 而这正是我所关心的。如果我能解决这个问题,那么我也可以使用其他模型方法。
$this->Payment_Model->getpaymentdetail($order_code);
当我在视图文件 (PaymentDetail.php) 中键入 <?php echo $paymentDetail['column_name']; ?>
时,出现错误
Undefined index: column_name
为什么会出现此错误?
model function getpaymentdetail() returns an array (result_array())
这些数组的结构通常如下:
Array
(
[0] => Array
(
[ID] => 3120
[column_name] => col1
)
)
因此您无法通过 <?php echo $paymentDetail['column_name']; ?>
访问 column_name,因为您的数组结构中不存在此索引。
如果你将一个索引移得更深,那么它将起作用:<?php echo $paymentDetail[0]['column_name']; ?>
注意,如果您希望返回超过 1 行,以上将仅访问第一个结果(索引为 0)行!您需要一个 foreach 循环来获取所有结果,请参阅 Generating Query Results - result arrays