2011-06-26 44 views
2
Array 
(
    [abc] => Array 
     (
      [0] => Array 
       (
        [id] => 1 
        [title] => hello 12 
        [meta_keyword] => 
        [meta_description] => 
        [tags] => sdfgdfg 
        [status] => draft 
        [body] => dsfdsf dfdsafsdfsdfsdf 
        [photo] => images/blog/nari.jpg 
        [raw] => nari 
        [ext] => .jpg 
        [views] => 0 
        [video] => 
        [categoryid] => 5 
        [subcatid] => 7 
        [featured] => 
        [pubdate] => 2011-06-17 03:39:55 
        [user_id] => 0 
       ) 

      [1] => Array 
       (
        [id] => 2 
        [title] => hello xyz 
        [meta_keyword] => 
        [meta_description] => 
        [tags] => xcfasdfcasd 
        [status] => draft 
        [body] => dfdsafsdf dsfdsf dfdsafsdfsdfsdf 
        [photo] => images/blog/nari.jpg 
        [raw] => nari 
        [ext] => .jpg 
        [views] => 0 
        [video] => 
        [categoryid] => 1 
        [subcatid] => 2 
        [featured] => 
        [pubdate] => 2011-06-17 03:43:12 
        [user_id] => 0 
       ) 

例如,如果我想呼应出题我会做echo $abc['title']但它不工作请帮助,如何作为CI中的变量访问这些数组键?

上面的输出是print_r($count['abc]); 结果就显示什么,当我做print_r($count['abc']['title'])

回答

2

你还需要使用数字键:$abc[0]['title']

换句话说,你已经有了一个使用数字键的数组类型的数组成员的数组,其中每个成员都是使用关联键访问值的数组。因此,您需要访问$abc中的每个数组以访问包含您的title值的数组。

编辑

如果通过这些值试图循环,你会通过每个阵列需要循环。如:

$c_abc = count($abc); 

for ($i = 0; $i < $c_abc; $i++) { 
    echo "{$abc[$i]['title']}<br/>"; 
} 
+0

我如何得到另一个foreach循环的这里面的价值? – ktm

+0

@sagarmatha - 我不确定你的意思。 –

+0

@sagarmatha - 另外,如果你的数组和你在编辑中的建议一样,你可以用'$ count ['abc'] [0] ['title']'来访问标题。 –

0

阅读关于PHP关联数组....你将有你的目标取得了

试试这个:

foreach ($array as $i => $values) { 
    print "$i {\n"; 
    foreach ($values as $key => $value) { 
     print " $key => $value\n"; 
    } 
    print "}\n"; 
} 
+0

如何在另一个foreach循环中获取该值? – ktm

0

要访问数组变量,以正确的方式是像这

$count['abc'][0]['title'] 

豪ver,在您的标题中,您正在询问Array keys as variables?

实际上,这并不需要与CI关联。

一个简单的例子

$array = array ("hi" => "bye"); 
extract($array); 
//it will make "hi" a variable :: $hi = "bye" 

echo $hi; // will output bye 
+0

虽然我同意这与CI没有任何关系,但我不确定这有助于... –

+0

@Jared Farrish,我没有翻修过,我用解决方案更新了我的答案。 – Starx

+0

这是对的;关于开始的唯一部分是我认为它混淆了这个问题。 OP当然在挣扎,第一部分并不是特别有用。 :) –

0

继承人结构解决方案

$data = Array(
    [abc] => Array 
     (
      [0] => Array 
       (
        [id] => 1 
        [title] => hello 12 
        [meta_keyword] => 
        [meta_description] => 
        [tags] => sdfgdfg 
        [status] => draft 
        [body] => dsfdsf dfdsafsdfsdfsdf 
        [photo] => images/blog/nari.jpg 
        [raw] => nari 
        [ext] => .jpg 
        [views] => 0 
        [video] => 
        [categoryid] => 5 
        [subcatid] => 7 
        [featured] => 
        [pubdate] => 2011-06-17 03:39:55 
        [user_id] => 0 
       ) 

      [1] => Array 
       (
        [id] => 2 
        [title] => hello xyz 
        [meta_keyword] => 
        [meta_description] => 
        [tags] => xcfasdfcasd 
        [status] => draft 
        [body] => dfdsafsdf dsfdsf dfdsafsdfsdfsdf 
        [photo] => images/blog/nari.jpg 
        [raw] => nari 
        [ext] => .jpg 
        [views] => 0 
        [video] => 
        [categoryid] => 1 
        [subcatid] => 2 
        [featured] => 
        [pubdate] => 2011-06-17 03:43:12 
        [user_id] => 0 
       ) 
     ) 
); 

extract($data); 

foreach($abc as $value){ 
    echo $value['title']."<br>"; 
}