관

switch문으로 만들어주세여~~!!

· 2010-02-16 (화) 19:31:23 · 1028 · 5
<? for ($i=0; $i<count($list); $i++) {

   $sf = $list[$i][bf_file];
   $file_0 = "$g4[path]/data/file/" .$list[$i][bo_table] ."/" .$list[$i][bf_file];
   preg_match("`<\s*img\s+src\s*=\s*['|\"]?([^'|\"\s]+://[^'|\"\s]+\.(gif|jpe?g|png))['|\"]?\s*[^>]+`i", $list[$i]['wr_content'], $images);

   /* 아래 내용을 switch로 만들고 싶어여 */
   if (file_exists($file_0) && preg_match("/\.(gif|jp[e]?g|png)$/i", $sf)) { 
    $file_img = $file_0;

   } else if (file_exists($file_0) && preg_match("/\.(hwp|xls|ppt|pdf|doc|txt)$/i", $sf)) {
    $file_img = "$member_skin_path/img/co_btn_doc.gif";

   } else if (file_exists($file_0) && preg_match("/\.(mp3|wma|wmv|wav|mid|avi|mov|mp[e]?g|asf)$/i", $sf)) {
    $file_img = "$member_skin_path/img/co_btn_player.gif";

   } else if (file_exists($file_0) && $sf) {
    $file_img = "$member_skin_path/img/co_btn_file.gif";

   } else if ($images[1]) { 
     $file_img = $images[1];

   } else {
     $file_img = "$member_skin_path/img/co_btn_noimg.gif";
   }
?>

switch( ) 안에 변수가 들어가야 한다고 들었는데, 위와 같은 경우 어떻게 넣어주어야 하는지 모르겠어여!!

그리고, switch문으로 만들어주세여~ ♡ ^^

많이많이 도와주세여~~~
|

댓글 5개

상황을 보니 switch문으로 변경은 어려울듯 보이네요.ㅠ 아래 고수님들께 패스~
위의 프로그램을 아래와 같이 switch문을 사용해봤습니다.
도움이되셨길 바랍니다.

<? for ($i=0; $i<count($list); $i++) {

$sf = $list[$i][bf_file];
$file_0 = "$g4[path]/data/file/" .$list[$i][bo_table] ."/" .$list[$i][bf_file];
preg_match("`<\s*img\s+src\s*=\s*['|\"]?([^'|\"\s]+://[^'|\"\s]+\.(gif|jpe?g|png))['|\"]?\s*[^>]+`i", $list[$i]['wr_content'], $images);


if ($images[1]) {
$file_img = $images[1];
} else {
$file_img = "$member_skin_path/img/co_btn_noimg.gif";
}

if ( file_exists($file_0) ) {
switch(TRUE) {

case (preg_match("/\.(gif|jp[e]?g|png)$/i", $sf)) :
$file_img = $file_0;
break;
case (preg_match("/\.(hwp|xls|ppt|pdf|doc|txt)$/i", $sf)) :
$file_img = "$member_skin_path/img/co_btn_doc.gif";
break;
case (preg_match("/\.(mp3|wma|wmv|wav|mid|avi|mov|mp[e]?g|asf)$/i", $sf)) :
$file_img = "$member_skin_path/img/co_btn_player.gif";
break;

default :
$file_img = "$member_skin_path/img/co_btn_file.gif";
break;
}
}

?>


* 도움이 되셨다면 답변 채택하여주세요
크레파숑님도 감사드려요~~~~~~~~
<? for ($i=0; $i<count($list); $i++) {

$sf = $list[$i][bf_file];
$file_0 = "$g4[path]/data/file/" .$list[$i][bo_table] ."/" .$list[$i][bf_file];
preg_match("`<\s*img\s+src\s*=\s*['|\"]?([^'|\"\s]+://[^'|\"\s]+\.(gif|jpe?g|png))['|\"]?\s*[^>]+`i", $list[$i]['wr_content'], $images);

if ( file_exists($file_0) || $images ) {
switch(TRUE) {
case (preg_match("/\.(gif|jp[e]?g|png)$/i", $sf)) :
$file_img = $file_0;
break;
case ($images[1]) :
$file_img = $images[1];
break;
case (preg_match("/\.(hwp|xls|ppt|pdf|doc|txt)$/i", $sf)) :
$file_img = "$member_skin_path/img/co_btn_doc.gif";
break;
case (preg_match("/\.(mp3|wma|wmv|wav|mid|avi|mov|mp[e]?g|asf)$/i", $sf)) :
$file_img = "$member_skin_path/img/co_btn_player.gif";
break;
case ($sf) :
$file_img = "$member_skin_path/img/co_btn_file.gif";
break;
default :
$file_img = "$member_skin_path/img/co_btn_noimg.gif";
}
}
?>

마지막 default는 switch 변수값이 적용되지 않기 때문에 noimg 처리!

그런데, 원소스대로 적용해도 괜찮을 듯...
감사합니다~~~~~~~^^
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

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

+
제목 글쓴이 날짜 조회
10-02-16 조회 1,642
10-02-16 조회 3,376
10-02-16 조회 1,599
10-02-16 조회 1,674
10-02-16 조회 941
10-02-16 조회 1,029
10-02-16 조회 885
10-02-16 조회 1,038
10-02-16 조회 967
10-02-16 조회 1,622
10-02-16 조회 2,508
10-02-16 조회 1,465
10-02-16 조회 1,645
10-02-16 조회 1,612
10-02-16 조회 1,145
10-02-16 조회 1,671
10-02-16 조회 1,614
10-02-16 조회 1,819
10-02-16 조회 1,147
10-02-16 조회 1,486