2014-04-24 66 views
-4

开始PHP获取值我有一个数组从索引变量

$map[ ]='A,R,T,E,D,C,B,X,Y'; 

如果我要寻找的元素C,则函数必须返回由C开始。如果6个元素最后一个元素再次达到它必须从开始遍历阵列

OUTPUT将是C,B,X,Y,A,R

如果我搜索值B第烯函数必须返回下面

OUTPUT将是B,X,Y,A,R,T

如果我搜索对于T

OUTPUT将是T,E,d,C ,B,X

+10

看起来像一门功课,你有什么这么远吗? – LefterisL

+4

线索:[array_search()](http://www.php.net/manual/en/function.array-search.php); [array_slice()](http://www.php.net/manual/en/function.array-slice.php) –

+0

它不是一个家庭作业,标签存储在数据库中,我提取它们,但需要上述逻辑实现在前端 – user3556434

回答

1
$array = explode(',','A,B,C,D,E,F,G,H'); 
$element = 'E'; 
$a = array_search($element, $array); 

for($i = 0;$i<6;$i++) { 
    if($a == count($array)) $a = 0; 
    echo $array[$a]; 
    $a++; 
} 

你需要这样的东西吗?

+0

Got worked ..thank you http://codepad.org/G6cIOimI – user3556434

1
$newarray = array(0 => 'A', 1 => 'R', 2 => 'T', 3 => 'E', 4 => 'D', 5 => 'C', 6 => 'B', 7 => 'X', 8 => 'Y'); 

$element = 'B'; 
$keyM = array_search($element,$newarray); 
$o=0; 
$k=$keyM; 
while($o < 6) 
{ 
    if(isset($newarray[$k])) 
    { 
     echo $newarray[$k]; 
    }else{ 
     $k=0; 
     echo $newarray[$k]; 
    } 
    echo'<br>'; 
    $k++; 
    $o++; 
} 

在这里你去