2013-05-19 5 views
0

메신저로 PHP에 익숙하며 매개 변수 전달 함수에 문제가 있습니다. 내 기능이 제대로 실행되지 않습니다. 이것은 함수입니다.PHP 매개 변수 전달

 function validateUser($username){ 

      if(!empty($_POST)) 
      { 

       if(strlen($_POST['username']) < 5) 
       { 

       die("Please enter a valid username"); 

       } 
} 

감사

+2

괄호'}'가 필요합니다. 또는, 당신은 무엇을 정확하게 얻었 느냐?? – egig

+0

'$ _POST' 변수에서 무엇이 스크립트인지 보려면'echo "

"; print_r($_POST); echo "
"; –

+1

을 실행하면됩니다. 코드는'$ username'이라는 매개 변수로 함수에 사용자 이름을 전달하기 때문에 약간 이상합니다. 함수는이 매개 변수를 사용하지 않고'$ _POST [ 'username']'에있는 것을 검증한다. –

답변

1

함수의 매개 변수는 함수를 호출 할 때 함수에 전달할 것입니다. 그런 다음 다른 변수와 마찬가지로 함수 내에서 액세스합니다.

function validateUser($username){ 
    if(strlen($username) < 5) 
    { 
     die("Please enter a valid username"); 
    } 
} 

당신은 다음과 같이 유효성을 검사 할 값을 사용하여 부를 것이다 :

validateUser($_POST['username']); 

팁 : 기능에 die()을 사용하지 마십시오. 그들에게 true 또는 false을 반환하고 오류를 처리하는 방법을 결정하는 코드를 갖도록하십시오.

1

매개 변수는 POST 변수에 전달되지 않습니다. 함수를 정의 할 때 매개 변수를 작성하는 방법은 사용하는 방법입니다.

function validateUser($username) 
{ 
    if(strlen($username) < 5) 
    { 
     return 0; 
    } 
}