문제

PHP에서 함수를 선언 할 수 있습니까? 예외를 던지는 것은 무엇입니까? 예 :

public function read($b, $off, $len) throws IOException 
.

도움이 되었습니까?

해결책

나는 그 질문을 잘못 읽고 Gilad에서 아래의 답을 보아라 (수락해야 함)

이전 답변 :

함수 본문에서 새로운 예외를 던질 수 있습니다. 여기

예 :

<?php
function inverse($x) {
    if (!$x) {
        throw new Exception('Division by zero.');
    }
    else return 1/$x;
}

try {
    echo inverse(5) . "\n";
    echo inverse(0) . "\n";
} catch (Exception $e) {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}

// Continue execution
echo 'Hello World';
?>
.

다른 팁

PHPDOC 주석에서 @throws를 사용할 수 있으며 IDE는이 함수를 예외를 던지 면서이 함수를 인식하지만 Java와 달리 {} catch 블록을 시도해 보게되지 않습니다.어쩌면 IDE의 향후 버전 (Intelij 11을 사용하는 경우)은 불일치를 인식 할 때 Doc (예 : 문자열})로 표시된 JavaScript 유형으로 이미 수행하는 것과 동일한 시도 {} 캐치가 예상되는 위치가 예상됩니다.

Short에서는 스크립팅 언어 (PHP, JavaScript ..)를 사용하여 코딩 할 때와 마찬가지로 Doclet을 사용하여 비 유형 안전 및 비 형식이 아닌 언어의 경우 안전한 프로그래밍을위한 보완 도구로 전환됩니다.

다음과 같이 :

enter code here
/**
 * Handle 'get' operations
 * @abstract
 * @param int $status reference for setting the response status
 * @param String $body reference for setting the response data
 * @return mixed
 * @throws Exception if operation fail
 */
function get(&$status, &$body) {
}
.

여기에 이미지 설명

spl : SPL 예외 .

자신만의 예외를 만들려면 :

PHP 예외 페이지 :

thrown 객체는 예외 클래스 또는예외의 서브 클래스.PHP 치명적인 오류가 발생하지 않는 객체를 던지려고합니다.

그래서 예, 자신의 예외를 만들 수 있습니다.약간의 독서가 당신이 원하는 것을 달성하는 데 도움이 될 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top