변수처리 문의
본문
echo $var = '"'. $id .'", '. $pay .', "테스트", "테스트", '. $pid .', ""';
insert_point( $var );
위 처럼 하면 안되죠....
그런게 혹시 저런 식으로? 하는 방법도 있을까요?
insert_point 함수에 전달 값이 제대로 들어가는지 echo 로 보고싶어서요
!-->
답변 3
해당 insert_point 함수 내부에서 매개변수를 체크하는게 더 편합니다.
function insert_point($mb_id, $point, $content='', $rel_table='', $rel_id='', $rel_action='', $expire=0)
{
// 매개변수 개수와 매개변수들을 출력
$num_args = func_num_args();
$args = func_get_args();
for ($i = 0; $i < $num_args; $i++) {
echo "Arg $i: " . var_export($args[$i], true) . "\n";
}
exit; // 함수를 중단시킴, 그래야 위 결과값이 출력됨.
// 함수 내부 코드...
}
본문처럼 작성하면 독립변수가 하나로 취급되어 제대로 전달 안 될 듯 합니다.
<?php
function plus($a,$b) {
return $a + $b;
}
echo plus(1,2); // 3
$a=1;
$b=2;
$c = $a.",".$b;
echo $c; // 1,2
echo plus($c); // 에러 발생
ps. 함수에서 확인하려면, 파란색코드 추가
<?php
function plus($a,$b) {
print_r(func_get_args()); exit; // Array ( [0] => 1 [1] => 2 )
return $a + $b;
}
echo plus(1,2); // 3
!-->
변수를 하나씩 출력해보는 방법으로 해결할 수 있습니다.
echo $id;
echo $pay;
echo $pid;
이렇게 하나씩 출력해보시면 변수가 제대로 전달되는지 확인할 수 있습니다.
답변을 작성하시기 전에 로그인 해주세요.