2011-07-24 32 views
1

多维阵列通过CodeIgniter使用下面的代码,我们可以生成一个表,如下产生笨

$this->load->library('table'); 

$data = array(
      array('11', '12', '13'), 
      array('21', '22', '23'), 
      array('31', '32', '33'), 
      array('41', '42', '43')  
      ); 

echo $this->table->generate($data); 

输出:
enter image description here

我想问我怎么才能把这个数组in for loop like:

for ($x = 0; $x < 5; $x++) { 
    for ($y = 0; $y < 4; $y++) { 
     $data xxx; 
    } 
} 

代替什么代码x xx

感谢

回答

1

也许:

$data= array(); 
for ($x = 1; $x < 5; $x++) { 
    $data[$x]= array(); 
    for ($y = 1; $y < 4; $y++) { 
     $data[$x][]= ($x*10)+($y); 
    } 
} 
echo "<pre>"; 
print_r($data); 
+0

做得好,我错了提出这个问题。在我的系统上,第三行'$ data [$ x] = array();'不需要工作。 –

+0

可以省略。 PHP将通过赋值'$ data [$ x] [] =($ x * 10)+($ y);' –

0

这是我将如何枚举数组:如果您需要在每个行/列,你可以使用下面的变型的指数

foreach ($data as $row) { 
    foreach ($row as $cell) { 
     echo $cell; 
     // Do stuff here! 
    } 
} 

foreach ($data as $row_index => $row) { 
    foreach ($row as $column_index => $cell) { 
     // Stuff! 
    } 
}