用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2286|回复: 4
收起左侧

[HELP] 请教,CI返回的数据数组的键名格式问题

[复制链接]
发表于 2012-2-12 23:31:50 | 显示全部楼层 |阅读模式
使用CI从数据库返回数组资料(db->get($table1)->result_array())用print_r结果如下:
Array ( [0] => Array ( [ID] => 1 [name] => 西装 [PS] => 苹果西装的尺码 ) [1] => Array ( [ID] => 2 [name] => 衬衫 [PS] => 通用男衬衫尺码 ) [2] => Array ( [ID] => 3 [name] => 夹克 [PS] => 苹果夹克男装 ) )

可以看到键名是用[]括起来的,而不是用''括起来,貌似因此不能用$arr['name']这样的格式输出资料。
不知这种情况怎么解决?
我的资料不返回对象而是返回数组是因为实际应用中我要一次返回主从两个表的资料,用对象不会做。我弄了以下测试数组,可以用键名正常输出资料的。
$arr1=array(
   array('id'=>1,'name'=>'裤','size'=>array(array('ids'=>1,'names'=>28),array('ids'=>2,'names'=>29),array('ids'=>3,'names'=>30))),
   array('id'=>2,'name'=>'衫','size'=>array(array('ids'=>1,'names'=>'S'),array('ids'=>2,'names'=>'M'),array('ids'=>3,'names'=>'L'))));


foreach ($arr1 as $as)
{
echo $as['id'].".";
echo $as['name']."<br>";
if (is_array($as['size']))
{
  foreach ($as['size'] as $az)
  {
   echo $az['ids'].".".$az['names']."<br>";
  }
}

 楼主| 发表于 2012-2-13 09:26:16 | 显示全部楼层
result_array()返回的数组用foreach($arr as $key=>$val)是可以输出键名的$key的,但是$val[‘键名']不能正常用。
 楼主| 发表于 2012-2-13 09:27:33 | 显示全部楼层
不知各位要返回主、从两个表的资料是怎么做的?
发表于 2012-2-13 11:36:52 | 显示全部楼层
你用 $key['value'] 是没问题的,你不用管 CI 返回的数组里有没有双引号。
你说说你报什么错吧?
 楼主| 发表于 2012-2-13 20:44:52 | 显示全部楼层
正常了,是我的问题,汗。。。
感谢!

本版积分规则