php 함수 표기법에 대해 궁금합니다.
본문
function member($mb_id, $test='yes', $realname='') {
질문1 $test에는 값이 없으면 yes를 넣어두라는뜻인가요? 값이 있읅여우 그값을가져오고??
질문2 $realname=''이렇게 표기되어있는데 그냥 $realname 이렇게 두는것과 무슨차이인가요?
질문3 함수를 사용할떄
echo member($member['Id'])
echo member($mb_id = $member['Id'])
이런형태는 어떤차이가 있는거죠?
찾아봤는데 잘 못찾겠어서 질문남깁니다;;
답변 2
질문1
네, 없으면 기본 값이 yes라는 겁니다.
질문2
기본값이 빈값입니다. 선언을 안하면 없는 변수이거나 null이되기 때문입니다.
질문3
결과값은 같지만 이런 형태는 안쓰는 방식이라고 생각하시면 됩니다.
해석은 그렇습니다. 변수 선언과 동시에 값을 넣고, 함수 매개변수에 넣은 꼴인데,
깊이 생각을 안하셔도 될 부분입니다.
문법적으로는 오류는 없지만, 좋지 않은 방식입니다.
member($member['Id']) 이렇게 사용해도 되는데 member($mb_id = $member['Id']) 이런식으로 사용하는 것은 비효율적입니다.
function F1( $a){}
F1 (); // 에러 납니다
function F2( $a, $b=' b'){}
F2( $aa); // 에러가 나지 않습니다
답변을 작성하시기 전에 로그인 해주세요.