null로 설정된 기존 쿼리 문자열 매개 변수와 누락 된 매개 변수를 구별 할 수 있기를 원합니다. 그래서 질문의 부분은 다음과 같습니다 매개 변수 쿼리 문자열 PHP에서 null 및 누락 된 쿼리 문자열 매개 변수 확인
- 는 어떻게 확인합니까? (예 : PARAM = null 또는 PARAM = (아무것도))
감사
null로 설정된 기존 쿼리 문자열 매개 변수와 누락 된 매개 변수를 구별 할 수 있기를 원합니다. 그래서 질문의 부분은 다음과 같습니다 매개 변수 쿼리 문자열 PHP에서 null 및 누락 된 쿼리 문자열 매개 변수 확인
감사
또는 사용 array_key_exists
:
if(array_key_exists("myParam", $_GET)) {
}
나는 본 적이 없습니다 빈 값을 서버에 전달하기위한 '관례'에 관심이 있습니다. 변수의 존재 여부를 테스트하는 데 익숙합니다. 그런 다음 트리밍하고 공을 테스트합니다.
$_GET
및 $_POST
에 저장된 값은 런타임에 명시 적으로 설정하지 않는 한 문자열이나 배열 일 수 있습니다. 검색어 문자열이 query=string
인 경우 값을 "string"
으로 변경하면 query=null
을 사용하면 "null"
이됩니다. 그것 때문에 문자열입니다.
보낼 경우 : query=
, 값은 ""
또는 빈 문자열이됩니다. isset
과 empty
사이의 differences을 기록해 두십시오. isset
은 값이 null이 아닌 경우 true이고, false
일 때 empty
은 true가됩니다. 따라서 의 경우isset
및 empty
의 경우 ""
이 true입니다.
그냥 쿼리 문자열 매개 변수가 "null"
의 문자열 값으로 설정 한 경우, 당신은 단순히 $_GET['query']=='null'
를 확인하실 수 있습니다 확인하려면 하나
(당신은 검사 전에 문자의 대소 문자를 조정할 수 있습니다) if 문 대신 2 개 :
if ((isset($_REQUEST['name'])) && (!empty($_REQUEST['name'])))
{
$name= $_REQUEST['name'];
}
+1! 정답이지만'empty()'는'isset()'를 의미하기 때문에'empty()'를 사용할 때는'isset()'이 필요하지 않습니다. 이것은 특히'! empty()'를 사용할 때 관련이있다. 그리고 질문의 두 번째 부분에 명시 적으로 대답을 추가해야합니다. – jwueller
@elusive 설정되지 않은 변수에서 empty를 호출하면 E_WARNING이 표시됩니다. –
@Byron Whitlock : 그게 정확하지 않다고 생각합니다. docs state _ "empty()는 변수가 설정되지 않은 경우 경고가 생성되지 않는다는 점을 제외하고는 (boolean) var의 반대입니다." – jwueller