질문드립니다.(분할필드 가변변수)
본문
아래 색상으로 표시된 부분
wr_11을 분할필드로 하려고 하는데
wr_11[0]
wr_11[1] 이런식으로 나오게 [$h]를
'wr_'.$k 다음에 붙여야 하는데 어떻게 해야 하는지요...
아래처럼하니 출력이 안됩니다.
$wra_start= 71; $h=0;
for($k=11; $k<=63; $k+=4){ $h++; $hs=sprintf("%02d", $h) ;
$wr11 = 'wr_'.$k[$h]; $wr71 = 'wr_'.$wra_start;
$wr12 = 'wr_'.($k+1); $wr74 = 'wr_'.($wra_start+3);
$wr13 = 'wr_'.($k+2); $wr73 = 'wr_'.($wra_start+2);
$wr14 = 'wr_'.($k+3); $wr72 = 'wr_'.($wra_start+1);
$wra_start+=7;
답변 3
반복문안에서 다른 값을 처리하는 것에 대한 질문이라 판단하고 답을 드립니다.
$wra_start= 71; $h=0;
for($k=11; $k<=63; $k+=4){ $h++; $hs=sprintf("%02d", $h) ;
$wr11 = 'wr_'.$k[$h]; $wr71 = 'wr_'.$wra_start;
$wr12 = 'wr_'.($k+1); $wr74 = 'wr_'.($wra_start+3);
$wr13 = 'wr_'.($k+2); $wr73 = 'wr_'.($wra_start+2);
$wr14 = 'wr_'.($k+3); $wr72 = 'wr_'.($wra_start+1);
$wra_start+=7;
와 같은처리가 정상적으로 이루어 지려면
wr_11 에도 여러개의 값이 있는것 같네요
유연한 Key값을 소유한 내용이라면 foreach를 사용하면 좋고
고정적인 숫자가 key값이라면 for 안 중첩 for문을 사용하면 됩니다
// 구조를 조금 변경해봅니다.
// $wr 이란 변수를 만들어 배열로 구성하고
$wr = array();
for ($wra_start= 71, $h=1, $k=11; $k <= 63; $wra_start += 4) {
for ($x =0; $x < 4; $x++, $h++, $k++, $wra_start++) {
$hs=sprintf("%02d", $h) ;
$wr[$k] = 'wr_'.$k[$h];
$wr[$wra_start] = 'wr_'.$wra_start;
}
// $wra_start+=7;
}
//확인을 위한 출력
print_r ($wr);
이렇게 해서 한번 확인해보세요
!-->!-->질문이 이해가 안되네요..
하고싶으신 것, 원하는 것을 말씀하시면,
방법을 알려드리는 것이 빠를듯 싶습니다.
분할필드라면, 구분자로 여러개의 값이 저장되어 있는건가요?
만약 구분자가 | 라면.. 아래와 같이 하면 됩니다.
$wr_11_arr = explode("|",$write['wr_11']);
<input type="url" name="wr_11[]" value="<?=$wr_11_arr[0]?>" "링크<?=$h?>" >
<input type="url" name="wr_11[]" value="<?=$wr_11_arr[1]?>" "링크<?=$h?>" >
<input type="url" name="wr_11[]" value="<?=$wr_11_arr[2]?>" "링크<?=$h?>" >