Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过数字索引获取关联数组值_Php_Arrays_Database_Codeigniter_Associative Array - Fatal编程技术网

Php 通过数字索引获取关联数组值

Php 通过数字索引获取关联数组值,php,arrays,database,codeigniter,associative-array,Php,Arrays,Database,Codeigniter,Associative Array,在的所有Codeigniter查询示例中,我发现必须知道字段的名称才能获取其值 $query = $this->db->query("SELECT title,name,body FROM table"); foreach ($query->result() as $row) { echo $row->title; echo $row->name; echo $row->body; } 例如,如果我想获取标题,我将执行行->标题。是否有一种方法

在的所有Codeigniter查询示例中,我发现必须知道字段的名称才能获取其值

$query = $this->db->query("SELECT title,name,body FROM table");

foreach ($query->result() as $row)
{
  echo $row->title;
  echo $row->name;
  echo $row->body;
}

例如,如果我想获取
标题
,我将执行
行->标题
。是否有一种方法可以使用索引(如
$row[0]
)获取
标题?

使用
结果数组
函数将查询结果作为纯数组返回

$query = $this->db->query("SELECT title,name,body FROM table");
    $result = $query->result_array();
    foreach($result as $res){
      echo $res['title'];
      echo $res['name'];
      echo $res['body'];
    }
如果要通过索引访问,请使用数组_值:

    $result = $query->result_array();
    foreach($result as $res){
      $r = array_values($res);
      echo $r[0];
      echo $r[1];
      echo $r[2];
    }

我应用了上面的代码,但在o/p中,每个值的索引都是0
o/p-阵列([0]=>201)阵列([0]=>202)阵列([0]=>203)阵列([0]=>204)阵列([0]=>205)

稍微优雅一点的方式:

$data = $this->db->query("SELECT title,name,body FROM table")->result_array();

array_walk($data,function(&$row) {
    $row = array_values($row);
});

您有带数字索引的$data数组。

这是对象,您不能将对象用作数组。-1 OP希望通过数字索引而不是键名获取值。
$data = $this->db->query("SELECT title,name,body FROM table")->result_array();

array_walk($data,function(&$row) {
    $row = array_values($row);
});