2014-11-21 48 views
0

我有一个数组$dtl错误未定义指数:笨的foreach - 甲骨文

Array 
(
    [MODULE_NAME] => Array 
     (
      [0] => Daily_Recurring_Grabber 
      [1] => Daily_Recurring_Grabber   
     ) 
    [START_EXECUTION] => Array 
     (
      [0] => 19-SEP-14 
      [1] => 21-SEP-14   
     ) 
    [FINISHED_EXECUTION] => Array 
     (
      [0] => 19-SEP-14 
      [1] => 21-SEP-14   
     ) 
    [NUM_OF_POPULATION] => Array 
     (
      [0] => 6630 
      [1] => 6169 
     ) 
    [SUM_AMOUNT] => Array 
     (
      [0] => 397922098.33 
      [1] => 360955418.47 
     ) 
) 

我只是想显示SUM_AMOUNT的价值观。所以我创造我视图这样的:

if(isset($dtl)){ 

foreach($dtl as $row){ 
?> 
<tr> 
    <td><?php echo $row['sum_amount']; ?></td> 
</tr> 

但我得到了一个错误:

Severity: Notice 

Message: Undefined index: SUM_AMOUNT 

Filename: pages/v_soaotc_monthly.php 

这是我模型

$this->pblmig_db = $this->load->database('collprod', true); 

     $sql="select * from inh_soa_otc_control 
       where module_name like 'Monthly_Accumulator%' 
       and finished_execution is not null"; 

     $stmt = oci_parse($this->pblmig_db->conn_id, $sql); 

     oci_execute($stmt); 
     $row = oci_fetch_all($stmt, $result); 
     oci_free_statement($stmt); 
     oci_close($this->pblmig_db->conn_id); 
     return $result; 

难道我错过的东西在我的代码?感谢您的帮助

回答

1

得到所有值试试这个

<?php 

if(count($dtl)>0){ 

    foreach($dtl['SUM_AMOUNT'] as $row){ 
?> 
     <tr> 
      <td><?= $row ?></td> 
     </tr> 
<?php 
    } 
} 
?> 

对于所有元素

<?php 

if(count($dtl)>0){ 

    foreach($dtl as $index => $dt1_element){ 
    //[MODULE_NAME] => Array 
?> 
     <ul> 
      <li>Data in <?= $index ?></li> 
      <ul> 
<?php 
     foreach($dt1_element as $row){ 
     //[0] => Daily_Recurring_Grabber 
     //[1] => Daily_Recurring_Grabber 
?> 
     <!-- Daily_Recurring_Grabber --> 
     <li><?= $row ?></li> 
<?php 
     } 
?> 
      </ul> 
<?php 
    } 
?> 
    </ul> 
<?php 
} 
?> 
+0

感谢胜利者,它的工作原理。我可以改进我的问题吗?如何显示所有字段(不仅是SUM_AMOUNT)?所以就像以表格形式显示数据一样。我应该使用哪些foreach?感谢您的帮助 – 2014-11-21 02:22:59

+0

因此,它只会打印整个值。我如何识别module_name,sum_amount等拥有哪个值? – 2014-11-21 09:35:30

+0

在循环中使用$索引。已过时的答案 – avenda 2014-11-21 10:28:21

0

$dtl已经是一个数组

您可以通过$dtl['SUM_AMOUNT']

访问SUM_AMOUNT或按

foreach($dtl as $key => $value){ 
<tr> 
    <td><?php echo $value; ?></td> 
</tr> 
}