Codigniter数组格式

时间:2017-09-27 03:12:19

标签: php arrays codeigniter

当创建一个数组并从数据库中获取某个列的值时,我有一个数组格式是否相同?

$result['user_name']$result[0]->user_name

2 个答案:

答案 0 :(得分:0)

此时,它只是常规的' PHP。正如@RashFlash指出的那样,在Codeigniter中多次从数据库结果创建一个数组或对象。该文档的目的是:https://www.codeigniter.com/userguide3/database/results.html

因此,您的第一个$result['user_name']只是引用一个数组,其中键为'user_name',后者引用数组中第一个对象的属性。

通常,数据库结果的处理/显示与此基于对象的示例类似(取自上述文档)。

$query = $this->db->query("YOUR QUERY");

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

$query = $this->db->query("YOUR QUERY");

foreach ($query->result_array() as $row)
{
        echo $row['title'];
        echo $row['name'];
        echo $row['body'];
}

答案 1 :(得分:0)

  

创建数组并从中获取某个列的值时   数据库,我有一个数组格式是否相同?

$result['user_name'] and $result[0]->user_name

在codeigniter中

$query->result() ;  // returns object

$query->result_array(); // returns array

$query->row();  // returns object

$query->row_array(); // returns array

在PHP(非常基础)

要访问数组元素,您必须使用[]或者您没有看到那么多,但您也可以使用的是{}

echo $array[0];
echo $array{0};

要访问对象属性,您必须使用->

echo $object->property;

如果在另一个对象中有一个对象,则只需使用多个->即可访问对象属性。

echo $objectA->objectB->property;

访问数组:

$ php -r '$a=array("s"=>123); echo $a{"s"}.PHP_EOL; echo $a["s"].PHP_EOL;'
123
123

访问对象:

php -r '$a=$b=new stdClass; $a->s="test"; $b->t="second"; $a->r=$b; echo $a->s.PHP_EOL; echo $a->r->t.PHP_EOL;'
test
second