2013-02-11 6 views
-4

설명이 필요합니다. 나는 다음과 같은 양식을 만들어 : 그런 다음 $ 코드 형태의 저장 값으로, 내가정의되지 않은 색인 (PHP)

$code= empty ($_POST['code']) ? null : $_POST['code']; 

실제로 근무 포럼에서 발견되는 스크립트의 라인을 사용

<form action="test4.php" method="post"> 
    <select name="code"> 
     <option value="A">A</option> 
     <option value="B">B</option> 
     <option value="C">C</option> 
     <option value="D">D</option> 
     <option value="E">E</option> 
    </select> 
    <input type="submit" value="Cus!"> 
</form> 

, 그러나 설명되지 않았다. 아무도 나에게 설명 할 수 있습니까 ??

+1

검색 "3 항 연산자"는 if/else 조건부 검사를 작성하는 속기 방법입니다. – Cups

+0

['empty()'] (http://us3.php.net/manual/en/function.empty.php) 및 [3 자 작동] (http://php.net/manual/en/language. operators.comparison.php # language.operators.comparison.ternary) –

+1

이것은 "정의되지 않은 색인"과 어떤 관련이 있습니까? – kba

답변

2

그것은 ternary을합니다. 구문은 var = (true) ? trueValue : falseValue;입니다. 다음과 같습니다.

if (empty($_POST['code'])) { 
    $code = null; 
} else { 
    $code = $_POST['code']; 
} 
2

empty() 반환 true을 변수가 0falsenull, 빈 문자열,

(condition ? result-if-condition-is-true : result-if-condition-is-false)ternary operatorcan be found here in the PHP manual라고 등 정의되어 있지 않은 경우.

은 또한이 같이 쓸 수있다 :

if (empty($_POST["code"])) { 
    $code = null; 
} else { 
    $code = $_POST["code"]; 
} 
1

이 연산자는 삼항 연산자입니다.

condition ? value_if_true : value_if_false 

귀하의 예제의 행은 다음과 동일합니다 :

if (empty($_POST["code"])) { 
    $code = null; 
} 
else { 
    $code = $_POST["code"]; 
} 
0

라드, 그 삼항 표현

삼항 연산자는 다음과 같은 형태를 취한다. true이면 $ _POST [ 'code'] 값을 $ code로 설정합니다.

Rad 답변을 얻었 으면 pls가 답에 대해 체크 표시를하고 이것이 열려있는 질문의 수를 줄이고 공개 질문 풀에서 제거됩니다.

관련 문제