업데이트 스킨에서
본문
$arr = implode('|', $_POST['city']); //
for($k = 0; $k < count($arr); $k++) {
if ($k > 0) $division .= "|";
$division .= $_POST['division'.$k];
}
city 배열갯수만큼
division도 같은 갯수의 배열로 하고 싶은데 안되네요
위 구문이 잘못된게 있나요?
디비에는 city가 저장되어 있습니다.
count($arr) 를 숫자로 지정하면 됩니다.
질문을 올렸는데
https://sir.kr/qa/387299?vpage=1#answer_387312
다시 해보니 안돼서요
구분자만 남고 값이 없어져 버리네요
답변 1
지금 질문 주신 구문이 잘못되어 있고 질문자님의 의도가 무엇을 원하는지 모르겠어요~
나름 해석하여 답변 작성해 봅니다.
$city는 질문상으로는 배열입니다. $city = array('서울', '경기', .......... );
그리고 배열을 "|" 구분자로 합치셨네요.
$arr = implode("|", $_POST['city']); // 이렇게 직상하면 배열을 "|"으로 합쳐 하나의 값으로 만드는거죠.
// $arr = 서울|경기|...... 이렇게 된거죠.
그런데 $arr을 count($arr) 했습니다.
아래와 같이 되어야 겠죠.
$arr = $_POST['city'];
for($i=0. $i < count($arr); $i++) {
// code
}
그리고, division 에 어떤씩으로 배열을 만들고 싶다는건지 명확하지 않습니다.
division도 $arr의 배열 갯만큼 배열을 만들고 싶다는데 배열값은 어떤 값이 들어가야 하는지요?
$arr의 배열값과 똑같은 값으로 $division의 배열을 만들고 싶다면.. 아래와 같이.
$division = $arr;
$division의 배열값을 division0, division1, division3 이렇게 만들고 싶다면..
$division = array();
for($i=0; $i < count($arr); $i++) {
$division[] = "division".$i;
}
질문 내용에 "구분자만 남기고 값이 없어지는 이유는...
$_POST['division0'];
$_POST['division1'];
$_POST['division2'];
$_POST['division3'];
이런 값들이 존재하지 않기 때문에 구분자 "|"만 남게 되는거죠.