如何获取数组元素的索引

时间:2011-11-16 14:39:06

标签: php arrays multidimensional-array

我需要获取数组元素的索引,在我的情况下$ch是一个数组元素,我需要索引值(例如:overview=array[0]$arval = 0),所以我可以打印$tabs[$arval+1]

<?php
$tab ='overview,gallery,video,songs$value1$value2$value3$value4';
$tabs = explode('$',$tab);
$tabname = explode(',',$tabs[0]);
echo '<div id="tab" style="float:left;width:100%;height:30px;background:#333">';
foreach($tabname as $i)
{
echo '<a id="'.$i.'" style="color:#fff;padding:2px 10px;" href="?tab='.$i.'" >'.$i.'</a>';
}
echo '</div>';


if(isset($_GET['tab']))
   {
       $ch=$_GET['tab'];
           foreach($tabname as $i){
              if ($ch == $i)

             // get the array index of the current element $arval
             // echo $tabs[$arval+1]

        }  }      ?>

我怎样才能完成它?

3 个答案:

答案 0 :(得分:4)

foreach($tabname as $index => $i){
                    ^^^^^^^^^

答案 1 :(得分:1)

foreach中,你需要这样做:

foreach($tabname as $index => $value){
// $index is the index
// $value is the value

    if ($ch == $i)

        // get the array index of the current element $arval
        // echo $tabs[$arval+1]

} 

答案 2 :(得分:1)

也许这对你有用:

if(isset($_GET['tab']))
{
       $ch=$_GET['tab'];
       if($key = array_search($ch, $tabname, true))
             // get the array index of the current element $arval
             echo $tabs[$key];

        }
}