PHP-변수가 정의되지 않았는지 확인
이 jquery 문장을 고려하십시오.
isTouch = document.createTouch !== undefined
PHP에 비슷한 문이 있는지 알고 싶습니다. isset ()이 아니라 문자 그대로 정의되지 않은 값을 확인합니다.
$isTouch != ""
PHP에서 위와 비슷한 것이 있습니까?
당신이 사용할 수있는 -
$isTouch = isset($variable);
다른 정의 된 true
경우 저장 됩니다 . 반전이 필요한 경우 간단히 .$variable
false
!
참고 : var가 존재하고 NULL이 아닌 값이 있으면 TRUE를 반환하고 그렇지 않으면 FALSE를 반환합니다.
당신이 확인하고 싶은 경우 또는 false
, 0
등은 또한 다음 사용 empty()
-
$isTouch = empty($variable);
empty()
작동-
- "" (빈 문자열)
- 0 (정수로 0)
- 0.0 (부동 수로 0)
- "0" (0은 문자열)
- 없는
- 그릇된
- array () (빈 배열)
- $ var; (선언되었지만 값이없는 변수)
또 다른 방법은 간단합니다.
if($test){
echo "Yes 1";
}
if(!is_null($test)){
echo "Yes 2";
}
$test = "hello";
if($test){
echo "Yes 3";
}
반환됩니다 :
"Yes 3"
가장 좋은 방법은 isset ()을 사용하는 것입니다. 그렇지 않으면 "undefined $ test"와 같은 오류가 발생할 수 있습니다.
다음과 같이 할 수 있습니다.
if( isset($test) && ($test!==null) )
첫 번째 조건이 허용되지 않으므로 오류가 발생하지 않습니다.
변수가 설정되어 있는지 확인하려면 isset 기능을 사용해야합니다.
$lorem = 'potato';
if(isset($lorem)){
echo 'isset true' . '<br />';
}else{
echo 'isset false' . '<br />';
}
if(isset($ipsum)){
echo 'isset true' . '<br />';
}else{
echo 'isset false' . '<br />';
}
이 코드는 다음을 인쇄합니다.
isset true
isset false
https://php.net/manual/en/function.isset.php 에서 자세히 알아보십시오.
당신이 사용할 수있는 -
POST / GET에 의해 설정된 값을 확인하는 삼항 oprator 또는 이와 같은 것이 아닙니다.
$value1 = $_POST['value1'] = isset($_POST['value1']) ? $_POST['value1'] : '';
$value2 = $_POST['value2'] = isset($_POST['value2']) ? $_POST['value2'] : '';
$value3 = $_POST['value3'] = isset($_POST['value3']) ? $_POST['value3'] : '';
$value4 = $_POST['value4'] = isset($_POST['value4']) ? $_POST['value4'] : '';
자바 스크립트의 '엄격한 동일하지'연산자 ( !==
과의 비교에)는 undefined
않습니다 하지 결과 false
에 대한 null
값.
var createTouch = null;
isTouch = createTouch !== undefined // true
To achieve an equivalent behaviour in PHP, you can check whether the variable name exists in the keys of the result of get_defined_vars()
.
// just to simplify output format
const BR = '<br>' . PHP_EOL;
// set a global variable to test independence in local scope
$test = 1;
// test in local scope (what is working in global scope as well)
function test()
{
// is global variable found?
echo '$test ' . ( array_key_exists('test', get_defined_vars())
? 'exists.' : 'does not exist.' ) . BR;
// $test does not exist.
// is local variable found?
$test = null;
echo '$test ' . ( array_key_exists('test', get_defined_vars())
? 'exists.' : 'does not exist.' ) . BR;
// $test exists.
// try same non-null variable value as globally defined as well
$test = 1;
echo '$test ' . ( array_key_exists('test', get_defined_vars())
? 'exists.' : 'does not exist.' ) . BR;
// $test exists.
// repeat test after variable is unset
unset($test);
echo '$test ' . ( array_key_exists('test', get_defined_vars())
? 'exists.' : 'does not exist.') . BR;
// $test does not exist.
}
test();
In most cases, isset($variable)
is appropriate. That is aquivalent to array_key_exists('variable', get_defined_vars()) && null !== $variable
. If you just use null !== $variable
without prechecking for existence, you will mess up your logs with warnings because that is an attempt to read the value of an undefined variable.
However, you can apply an undefined variable to a reference without any warning:
// write our own isset() function
function my_isset(&$var)
{
// here $var is defined
// and initialized to null if the given argument was not defined
return null === $var;
}
// passing an undefined variable by reference does not log any warning
$is_set = my_isset($undefined_variable); // $is_set is false
if(isset($variable)){
$isTouch = $variable;
}
OR
if(!isset($variable)){
$isTouch = "";//
}
참고URL : https://stackoverflow.com/questions/30191521/php-check-if-variable-is-undefined
'program tip' 카테고리의 다른 글
교리 2에서 엔티티를 다른 행으로 다시 저장하는 방법 (0) | 2020.11.04 |
---|---|
NGINX gzip이 JavaScript 파일을 압축하지 않음 (0) | 2020.11.04 |
가상 방법이란 무엇입니까? (0) | 2020.11.04 |
코드 프리젠 테이션에 적합한 글꼴? (0) | 2020.11.04 |
System.Drawing.Image를 C # 스트리밍 (0) | 2020.11.04 |