채택완료

write_update.skin.php 에서 for문은 어떻게 돌리나요?

2017-10-21 (토) 00:19:57 2,308

우선 코드부터 보시죠~

Copy
for ($i=1; $i<=10; $i++) {$geo.$i = getNaverGeocode($_POST['mwb_list_address_'.$i], $MWB_naver_map_api, $MWB_naver_map_secret);$data.$i = json_decode($geo.$i,1);$map_x_point.$i = $data.$i['result']['items'][0]['point']['x'];$map_y_point.$i = $data.$i['result']['items'][0]['point']['y'];$mwb_list_grd_la_.$i = $map_x_point.$i;$mwb_list_grd_lo_.$i = $map_y_point.$i;}

네이버 맵 api를 이용해서 mwb_list_address_1 부터 10까지의 주소를

각각 mwb_list_grd_la_1~10까지 mwb_list_grd_lo_1~10까지

값을 구하고 있었습니다.

요녀석들을 다 구하고 db에 넣으려고 하는데요..


for문에서 $i를 어떻게 붙혀야지 요녀석들이 제대로 구해질까요?

위처럼 해보니 뺑뺑이만 계속 도는 것 같습니다.

( 참 db에는 주소와 위도경도 1~10까지 전부 추가시켜놓았습니다.)

|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
2017-10-21 (토) 00:46:01
$geo.$i 는 $gdo 변수에 저장된 값과 $i 에 저장된 값을 문자열 연결 시킨다는 의미입니다.
($a = "hello"; $b = "world; echo $a . " " . $b; // hello world)
의도대로 사용하려면 ${"geo".$i} 식으로 표기해야 합니다.
가변변수를 사용해도 되기는 하지만, http://php.net/manual/kr/language.variables.variable.php
배열 사용을 추천하겠습니다.
Copy
for ($i=1; $i<=10; $i++) {
$geo[$i] = getNaverGeocode($_POST['mwb_list_address_'.$i], $MWB_naver_map_api, $MWB_naver_map_secret);
$data[$i] = json_decode($geo[$i],1);
$map_x_point[$i] = $data[$i]['result']['items'][0]['point']['x'];
$map_y_point[$i] = $data[$i]['result']['items'][0]['point']['y'];
$mwb_list_grd_la[$i] = $map_x_point[$i];
$mwb_list_grd_lo[$i] = $map_y_point[$i];
}

답변에 대한 댓글 1개

말씀하신 대로 해보았으나 안되네요.
하지만 첫번째 내용에서 힌트를 얻어 해결했습니다.
감사합니다~

답변을 작성하려면 로그인이 필요합니다.