재배열 질문합니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

재배열 질문합니다. 정보

재배열 질문합니다.

본문

<?
$number = "56,24,33,86,2,32,12,59,10,54";
echo $number;
?>
 
위 값을 숫자가 가장 작은 값부터 다시 배열하려면 어떻게 해야되나요...?
 
ex) 2,10,12,24,32,33,54,56,59,86
 
가능한지 질문 합니다~~~ ^ ^;;
  • 복사

댓글 전체

$temp = explode(",", $number);

for($i=0; $i<sizeof($temp) - 1; $i++)
{
 for($j=$i+1; $i<sizeof($temp); $j++)
 if($temp[i] > $temp[j]) { $t = $temp[i]; $temp[i] = $temp[j]; $temp[j] = $t; }
}
혹시여 시간 넘엇다고 에러뜨지 않나요? 30초 지나서 어쩌구 저쩌구 하던뎅
그래서 set_time_limit(0);넣어주구 햇더니 끝날기미가 안뵈이구 -ㅅ-;;
$arr = array(56,24,33,86,2,32,12,59,10,54);
sort($arr);
$i = "1";
$max = count($arr);
foreach($arr as $n){
 if ($i == $max){
  $number .= $n;
 }else{
  $number .= $n.",";
 }
$i++; 
}
echo $number;

큰순으로 정렬하려면 반복문을 돌기전에 rsort($arr);
작은 순으로 정렬하려면 반복문 돌기전에 sort($arr);
감사드립니다.

값을 db에서 뽑아오면 배열이 안 되네요.

$type = $list[$i][wr_1];

$arr = array($type);
sort($arr);
$j = "1";
$max = count($arr);
foreach($arr as $n){
 if ($j == $max){
  echo $n;
 }else{
  echo $n.",";
 }
$j++; 
}





아래처럼 하면 배열이 되고요...

$arr = array(17,27,3,43,8,9);
sort($arr);
$j = "1";
$max = count($arr);
foreach($arr as $n){
 if ($j == $max){
  echo $n;
 }else{
  echo $n.",";
 }
$j++; 
}






또 ㄷ ㅏ른 방법..
//실패
$type = "17,27,3,43,8,9";
$aa = array($type);
asort($aa);
foreach($aa as $aavalue) {
echo $aavalue;
}

//통과
$aa = array(17,27,3,43,8,9);
asort($aa);
foreach($aa as $aavalue) {
echo $aavalue;
}




왜 ㅇ ㅣ럴까용...?
<?
//문자열을 배열화 한거고..
$number = "56,24,33,86,2,32,12,59,10,54";
$nums = split(",", $number);
sort($nums);
for($n=0; $n<count($nums); $n++) echo"$nums[$n]<br>";
?>



<?
//배열로 선언되면 바로 소트가 가능하죠.
$number =array("56","24","33","86","2","32","12","59","10","54");reset($number);
sort($number);
for($n=0; $n<count($number); $n++) echo"{$number[$n]}<br>";
?>
오달수님께서 답변을 해주었네여.
또 다른 방법입니다.
<?
$list[$i][wr_1] = "17,27,3,43,8,9";  //db에 있는 wr_1 필드값
$type = $list[$i][wr_1];
$arr = explode(",",$type);
sort($arr);
$con = count($arr);
for($k=0; $k < $con; $k++){
  if ($k == ($con-1)){
    $str .= $arr[$k];
  }else{ 
    $str .= $arr[$k].","; 
  }
}
echo $str;
?>
© SIRSOFT
현재 페이지 제일 처음으로