채택완료

값들을 랜덤으로 3개씩 뽑아오려면...

2015-07-29 (수) 11:03:56 2,313

$a1 = '<img src="img_a1.jpg">';

$a2 = '<img src="img_a21.jpg">';

$a3 = '<img src="img_a3.jpg">';

$a4 = '<img src="img_a4.jpg">';

$a5 = '<img src="img_a5.jpg">';

$a6 = '<img src="img_a6.jpg">';

쉬운듯 싶은데.. 이상하게 잘안되네요 ㅜㅜ

위의 6개값을 랜덤으로 중복없이 불러오려고 하는데 어떻게 해야할까요..

A | B | C

위에같이 3군데에 불러오려고하는데 랜덤으로 불러오되

$a1 값이 A에서 노출이 됐다면 B,C에서는 $a2~$a6중 다른값이 랜덤으로 나오게끔...

$a2 값이 A에서 노출이 됐따면 B,C에서는 $a1,$a3~$a6 중 다른값들이 랜덤으로 나오게끔..

그러니깐 중복없이 랜덤으로 A,B,C에 위의 값들이 노출이 되었으면 좋겠습니다^^;;

고수님들 선감사드립니다.

|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
2015-07-29 (수) 11:40:00

일단 위 처럼 $a1~$a6에 이미지를 넣으면 값을 뽑기가 힘듭니다.

각각의 값에 숫자를 넣어서 그 값으로 나중에 이미지에 대입하는게 편하죠.

Copy
<?php$a1 = 1;$a2 = 2;$a3 = 3;$a4 = 4;$a5 = 5;$a6 = 6;//$a1~a6은 순차여야 합니다 1,2,4,6  이런식으로 할 수 없습니다//왜냐구요? php rand()함수 검색해보세요 //$a 값구하기$a = rand($a1,$a6);  //echo($a);$b = rand($a1,$a6);if($a == $b) { //b 중복검사    for(;;) {        $b = rand($a1,$a6);        if($a != $b) { //a와 b가 같지 않으면 중단            break;        }    }}//echo("<br/>".$b);$c = rand($a1,$a6);if($a == $c || $c == $b) { //c 중복검사    for(;;) {        $c = rand($a1,$a6);        if($a != $c ) { //a와 c가 같지 않으면            if($b != $c) { //b와 c가 같지 않으면 중단                break;            }        }    }}//echo("<br/>".$c);echo("<br/> a == ".$a." b == ".$b." c == ".$c);?>

이제 $a $b $c값을 구했으니 이 값으로 이미지 불러오면 되겠지요

​<img src="img_<?=$a?>.jpg">

<img src="img_<?=$b?>.jpg">

<img src="img_<?=$c?>.jpg"> 

답변에 대한 댓글 1개

불량학생님 대단히 감사합니다!!!

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