2017-02-22 13 views

답변

2

PHP 5.6 및 7.0에서는 빈 문자열을 포함하는 변수를 다음과 같은 배열로 변환하는 것이 유효합니다. 따라서 예외를 생성하려면 자체 유효성 검사를 제공해야합니다. 에서

function checkAndAssign($var, $val){ 
    if (is_string($var)){ 
     throw new ErrorException('Do not assign array item to a string'); 
    } 
    return $val; 
} 

$items = ''; 

try{ 
    $items[] = checkAndAssign($items, 'test'); 
}catch(Exception $e){ 
    echo $e->getMessage(); 
    return; 
} 

var_dump($items); 

결과 :

문자열이 치명적 오류를 생성 PHP 7.1에서

에 배열 항목을 지정하지 마십시오. 이미 시도하고 싶다면 How do I catch a PHP Fatal Error 질문에 대한 좋은 대답이 있습니다.