테스트 사이트 - 개발 중인 베타 버전입니다

php 두 배열이 짝을 찾아 섞는 방법을 찾고 있습니다. 채택완료

찬돌이 4년 전 조회 1,808

$arr_a=[1,2,3,4,5];

$arr_b=['one','two','three','four','five']

$arr_a, $arr_b 배열을 동시에 섞는 방법을 찾고 있습니다.

예를 들어

shuffle($arr_a)

shuffle($arr_b)

shuffle로 섞으면 짝을 찾지 못합니다.

찾고자하는 해결 법은

$arr_a=[2,1,3,5,4];

$arr_b=['two','one','three','five','four']

이렇게 짝을 찾아서 섞는 방법 부탁드립니다.

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
핑크빈
4년 전

</p>

<p> </p>

<p><?php</p>

<p>

 </p>

<p>$arr_a=[1,2,3,4,5];</p>

<p> </p>

<p>$arr_b=['one','two','three','four','five'];</p>

<p> </p>

<p>$count = count($arr_a);</p>

<p>$order = range(1, $count);</p>

<p> </p>

<p>shuffle($order);</p>

<p>array_multisort($order, $arr_a, $arr_b);</p>

<p> </p>

<p>var_export($arr_a); // array ( 0 => 1, 1 => 4, 2 => 5, 3 => 3, 4 => 2, )</p>

<p>var_export($arr_b); // array ( 0 => 'one', 1 => 'four', 2 => 'five', 3 => 'three', 4 => 'two', )</p>

<p>?></p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

찬돌이
4년 전
빠른 답변에 너무 감사드립니다.
행복하세요..

댓글을 작성하려면 로그인이 필요합니다.

$arr=array(

array( 'a'=>1,'b'=>'one'),

array( 'a'=>2,'b'=>'two'),

...);

shuffle($arr);

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인