如何在PHP中获取数组索引号?

时间:2010-09-24 17:03:18

标签: php arrays

我确定这是一个愚蠢的问题,但现在是星期五,我的大脑无法解决这个问题。我有一个数组数组,如下所示:

$cart = Array ( 
[0] => Array ( [TypeFlag] => S [qty] => 2 [denom] => 50  [totalPrice] =>  100 )
[1] => Array ( [TypeFlag] => V [qty] => 1 [denom] => 25  [totalPrice] => 25 ) 
) 

我循环遍历此数组并打印出表行,每个内部数组一个。这部分工作正常。我现在需要在一个包含内部数组的实际索引号的表单元格中包含一个链接,以便我可以在该数组上运行特定的函数。我知道如何访问特定的数组元素,比如$ cart [0],但是当我编写链接时如何获得实际的零?写表的循环目前如下所示:

 foreach($this->cart as $value) {
    $finalTotal += $value['totalPrice'];
         echo "<tr>";
         foreach($value as $key=>$item) {   
        //create a new row for each internal array element  
                echo "<td>".$item."&nbsp;</td>";
          }
      //now add a link for each external array element
          echo "<td><a href=\"myFunction(arrayIndex)\">Delete</a></td></tr>";
 }

我需要做的是将myFunction中的arrayIndex参数替换为当前循环数组的实际索引号,这样,给定示例数组,我最终会得到如下所示的表代码: / p>

<tr>
    <td>S</td>
    <td>2</td>
    <td>50</td>
    <td>100</td>
    <td><a href="myFunction(0)">Delete</a></td>
</tr>
<tr>
    <td>V</td>
    <td>1</td>
    <td>25</td>
    <td>25</td>
    <td><a href="myFunction(1)">Delete</a></td>
</tr>

任何人都可以请我的可怜的大脑快速启动吗?

3 个答案:

答案 0 :(得分:2)

foreach($this->cart as $index => $value) { 
    $finalTotal += $value['totalPrice']; 
         echo "<tr>"; 
         foreach($value as $key=>$item) {    
        //create a new row for each internal array element   
                echo "<td>".$item."&nbsp;</td>"; 
          } 
      //now add a link for each external array element 
          echo "<td><a href=\"myFunction($index)\">Delete</a></td></tr>"; 
 } 

答案 1 :(得分:2)

只需更改

foreach($this->cart as $value) 

foreach($this->cart as $cart_key => $value) 

然后在echo中使用它:

echo "<td><a href=\"myFunction($cart_key)\">Delete</a></td></tr>";

答案 2 :(得分:0)

foreach($this->cart as **$index** => $value) {