Php 使用codeigniter在json中只返回最后一行
我尝试使用codeigniter返回json数据,稍后我将在javascript中使用该json。现在的问题是,它只返回数据库表中的最后一行,并从这一行生成json格式。这是我在控制器中的代码Php 使用codeigniter在json中只返回最后一行,php,json,codeigniter,Php,Json,Codeigniter,我尝试使用codeigniter返回json数据,稍后我将在javascript中使用该json。现在的问题是,它只返回数据库表中的最后一行,并从这一行生成json格式。这是我在控制器中的代码 public function v1 () { $this->load->model('model_jokes'); $jokes = $this->model_jokes->readJokes(); foreach ($jokes as $joke) {
public function v1 () {
$this->load->model('model_jokes');
$jokes = $this->model_jokes->readJokes();
foreach ($jokes as $joke) {
$arr = array(
array(
'title' => $joke->title,
'description' => $joke->joke
)
);
}
echo json_encode($arr);
}
如何使我从数据库检索的所有数据都以json格式返回?试试看
$arr = array();
foreach ($jokes as $joke) {
$arr[] = array (
'title' => $joke->title,
'description' => $joke->joke
);
}
在代码段中,循环中的每个迭代都会覆盖$arr
本文中的上述代码片段将把所有条目附加到数组$arr中,稍后您可以将其编码为json。试试看
$arr = array();
foreach ($jokes as $joke) {
$arr[] = array (
'title' => $joke->title,
'description' => $joke->joke
);
}
在代码段中,循环中的每个迭代都会覆盖$arr
本文中的上述代码片段将把所有条目附加到数组$arr中,您可以稍后将其编码为json。您在每次迭代中将$arr分配给一个新数组,而不是向其添加值
$arr = array();
foreach ($jokes as $joke) {
$arr[] = array(
'title' => $joke->title,
'description' => $joke->joke
);
}
您在每次迭代中将$arr分配给一个新数组,而不是向其添加值
$arr = array();
foreach ($jokes as $joke) {
$arr[] = array(
'title' => $joke->title,
'description' => $joke->joke
);
}
我总是这样做
$arr = array();
$key = 0;
foreach ($jokes as $joke)
{
$arr[$key]['title'] = $joke->title;
$arr[$key]['description'] = $joke->joke;
$key++;
}
我总是这样做
$arr = array();
$key = 0;
foreach ($jokes as $joke)
{
$arr[$key]['title'] = $joke->title;
$arr[$key]['description'] = $joke->joke;
$key++;
}
你的控制器不对
//CONTROLLER
public function v1() {
$this->load->helper('file');
$data = $this->load->model('model_jokes');
$this->output
->set_content_type('application/json')
->set_output(json_encode($data));
}
并确保您的模型创建了阵列而不是控制器:
public function model_jokes()
{
$jokes = $this->_load_data();
$list = array();
foreach ($jokes as $joke) {
$list['joke'] = array(
'yourdata1' => $joke->yourvariable,
'yourdata2' => $joke->yourvariable
);
}
return $list;
}
我在模型中使用了一个私有函数来获取所有数据
希望有帮助 您的控制器不正确
//CONTROLLER
public function v1() {
$this->load->helper('file');
$data = $this->load->model('model_jokes');
$this->output
->set_content_type('application/json')
->set_output(json_encode($data));
}
并确保您的模型创建了阵列而不是控制器:
public function model_jokes()
{
$jokes = $this->_load_data();
$list = array();
foreach ($jokes as $joke) {
$list['joke'] = array(
'yourdata1' => $joke->yourvariable,
'yourdata2' => $joke->yourvariable
);
}
return $list;
}
我在模型中使用了一个私有函数来获取所有数据
希望有帮助