전달 된 값을 검사하고 false 또는 true를 반환하는 함수가 있는데, false이면 배열에 무언가를 추가하려고합니다. 필자가 작성한 코드는 다음과 같습니다.PHP에서는 함수 호출에서 부울 값을 검사 할 수 있습니까?
if(!check_input($_POST['username'])){
$errors[] = "Username";
}
지금은 양식에 입력 된 내용과 관계없이 어쨌든 내 배열에 추가됩니다. check_input()
의 반환이 거짓인지 확인하는 올바른 방법을 작성한 방법입니까? 나는 에코 리턴 값을 변경하여 함수의 로직을 검사했으며, 올바른 값을 리턴하고 있습니다. 잘못 체크했는지 확실하지 않습니다.
나는 이전에 $X=check_input
등으로 작성하려고 시도했지만 그 다음에 if(check_value == false)
으로 작성했지만 원하는 결과를 얻지 못했습니다. 흠, 빠른 포인터주세요!
편집 :
내가 문제를 발견 생각 내 기능보고 후 좋아, 나는 if 문, 그리고 있다는 내 경우 else 문,의 값이 비어 있지 검사 경우 처음 두 번째는 최대 길이를 초과하지 않는지 검사하고 true/false를 반환합니다. 내가 그 값을 통과했다면 최대 길이 만 체크하도록 설정했거나 아무것도 설정하지 않았습니다. 그러나, 균형에 나는 주요 if 진술에 대한 진정한 반환을 가지고 있지 않습니다. 그래서 내 논리는 현재 값이 아무것도 아닌 것보다 크면 최대 길이와 비교하여 확인한 다음 true를 반환합니다. 최대 길이를 확인하지 않고 값이 있으면 아무 것도 반환하지 않습니다. 흠. 그게 내 문제의 원인이라고 생각하니?
편집 2 :
모두 감사합니다, 그리고 제안 마빈에게 나는 기능을 다시 확인합니다. 나는 그것을 작동 시켰습니다. false가 반환되거나 false가 반환되면 else 문과 hey presto에서 true를 반환합니다.
statemnet이 맞습니다. 그런 함수를 사용할 수 있습니다. check_input 함수에 뭔가 잘못 되었으면 좋겠다. dobule이 그것을 확인하려면 – marvin
, check_input()은 부울을 반환해야한다. – dnagirl