2011-10-29 6 views
0

좋아, 그래서 제목이 아주 좋지 않아 난 단지 짧은 문장에서 무엇을하려고하는지 설명하는 방법을 모르겠어. 그래서 여기서 최선을 다할 것이다 ....옵션으로 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

어떻게 한 번에 두 가지를 열거 약 :

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

이 확인 난 당신이 무슨 뜻인지 볼 수 있지만 내 목록의 숫자가 어쩌면 내가 뭔가를 수 있다면 문제가되지 않습니다 내 질문에 – Dizzi

+0

을 편집합니다, 반드시 순서에 실제로 아니다 귀하의 목록에 순서대로 또는 아닙니다, 위의 루프가 여전히 작동합니다. – guru

0

뿐만 아니라,이 응용 프로그램, 연관 배열을 사용해보십시오 :

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

그런 다음 , 당신은 너무로에 foreach 문을 사용할 수 있습니다

foreach($options as $key=>$value){ 
    print("$key: $value\n"); 
}