코드를 줄이고 싶습니다

코드를 줄이고 싶습니다

QA

코드를 줄이고 싶습니다

본문

wr_11부터 7간격으로 즉 wr_11, wr_18,~~~ 이런식으로 이걸 쓰고 있는데요..

한 20개 되다보니 

이걸 20번 반복하고 있습니다.

좋은 방법이 없을까요?


<? if($list[$i][wr_11] == 0){  

echo ""; 

}else{ 

echo "<span style='color:red'>{$list[$i][wr_11]}</span>"; 

?>

이 질문에 댓글 쓰기 :

답변 4

$total = 20;

for ($j=11; $total>0; $j+=7, $total--) {

    if (isset($list[$i]['wr_'.$j])) {

        echo ($list[$i]['wr_'.$j] === 0) ? "" : "<span style='color:red'>{$list[$i]['wr_'.$j]}</span>";

    }

}


<?php
$wr_1  =  100;
$wr_2  =  2;
$wr_3  =  3;
$wr_4  =  4;
$wr_5  =  5;
$wr_6  =  6;
$wr_7  =  7;
$wr_8  =  8;
$wr_9  =  9;
$wr_10 = 1000;
$wr_11 = 11;
$wr_12 = 12;
$wr_13 = 13;
$wr_14 = 14;
$wr_15 = 15;
$wr_16 = 16;
$wr_17 = 17;
$wr_18 = 18;
$wr_19 = 19;
$wr_20 = 2000;

for ($i = 1; $i <= 20; $i++) {
    echo ${'wr_' . $i} . '<br />';
}
?>



<?php
$list = [
    [
        'wr_1' => 1,
        'wr_2' => 0,
        'wr_3' => 3
    ],
    [
        'wr_1' => 3,
        'wr_2' => 2,
        'wr_3' => 0
    ]
];

foreach ($list as $arr) {
    $arr = array_filter($arr);
    foreach ($arr as $v) {
        echo '<span style="color: red;">' . $v . '</span><br />';
    }
}
?>

예제입니다. (실제 테스트, 오류 테스트는 해보지 못했습니다.)



foreach($list[$i] as $col => $val) { // $list[$i] 의 칼럼들 순회
	if (is_numeric($col)) {	// 칼럼명에 숫자가 포함되어 있다면 wr_1, wr_2, ... 
		$num = (int) ($col); // 칼럼명의 숫자부분만 추출
		if ($num >= 11 && $num % 7 == 4) { // 7로 나눈 나머지가 4이면
			if ($val === 0)
				echo "";
			else
				echo "<span style='color:red'>{$list[$i][$col]}</span>"; 	
		} 			
	}	
}

크롬 브라우저로 해당 부분에서 마우스 우클릭 > 검사를 하면, http://kyunni22.tistory.com/7

어떤 스타일이 적용되고 있는지, 어떤 문제가 있는 것인지 등을

확인하여 수정하시면 됩니다.

span style 이 적용안되는건 아마도
다른 class정의된 내용과 충돌일 확율이 높습니다

웹브라우저 개발자 도구를 열어서 해당 페이지를 로딩해보세요
스타일에 취소선이 그어져 있을수 있습니다

코드줄리는건 다양한 방법들이 있긴합니다


for ($ii=11,$j=0; $j < 20;$j++,$ii+=7){
    if ( $list [$i]['wr_'. $ii])
        echo "<span style='color:red'>{$list[$i]['wr_'. $ii]}</span>"; 
}
답변을 작성하시기 전에 로그인 해주세요.
전체 702
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT