2011-10-29 7 views
0

このタイトルはあまり良くありません。私は1つの短い文章で何をしようとしているのかを説明する方法がわからないので、ここで最善を尽くします....phpリストの分割配列をオプションとして

私は番号と名前が提携/リンクされそう...)(リストに分割することにより、

として示し
list($number, $name) = $options; 

echo $name . ' : ' . $number . '<br />'; 

これを行っていることがしたいアレイ

$options = array('156656', 'bar', '235456','soft', '353636','eve', '4356563', 'evil'); 

を持っています

156656 : bar 

しかし、私は必要なので、のように記載されていることへのすべてのためのものです...

156656 : bar 
235456 : soft 
353636 : eve 
4356563 : evil 

私はこれを推測しているがforeachので行われますが、これまで私がしようとすると、いつものように

を失敗していますすべての援助は感謝し、前もって感謝しています。

答えて

2

あなたは以下のようなサブ配列を取得するためにarray_chunkを使用することができます。

$options = array('1', 'bar', '2','soft', '3','eve', '4', 'evil'); 
foreach (array_chunk($options, 2) as $sub) { 
    list($number, $name) = $sub; 
    echo $number . ' : ' . $name . '<br />'; 
} 
+0

ありがとうxdazz – Dizzi

1

どのように一度に2つを列挙について:

for ($i = 0; 2 * $i < count($arr); ++$i) 
{ 
    print("First: " . $arr[2 * $i] . ", Second: " $arr[2 * $i + 1]); 
} 
+0

は、[OK]を、私はあなたが何を意味するか見たが、私のリスト内の数字は多分私はそれが数字ならば問題ありません。私の質問 – Dizzi

+0

を編集しますが、必ずしも順番に実際にではありませんあなたのリストにあるかどうかは、上記のループはまだ動作します。 – guru

0

だけでなく、このアプリケーションのために、連想配列を使用してみてください:

$options = array('156656'=>'bar', '235456'=>'soft', '353636'=>'eve', '4356563'=>'evil');

次に、あなたはそうと、その上のforeachを使用することができます。

foreach($options as $key=>$value){ 
    print("$key: $value\n"); 
} 
関連する問題