Home  >  Article  >  php教程  >  php抛出异常

php抛出异常

PHP中文网
PHP中文网Original
2016-05-23 08:39:221090browse

PHP代码

<?php
 
/**
 * 错误异常处理
 */
 
$arr = [
     
    &#39;data&#39; => &#39;hello world&#39;,
];
 
 
$res = &#39;123&#39;;
 
printData(check($res));
 
printData(check($arr));
 
 
/**
 * Array
(
[line] => 21
[file] => 21
[msg] => not is array
)
Array
(
[data] => hello world
)
 *
 */
 
function check($x){
 
    try{
        if(!is_array($x)) {
 
            throw new Exception(&#39;not is array&#39;);
        }
 
    }catch(Exception $e){
 
        $data[&#39;line&#39;] = $e->getLine();
        $data[&#39;file&#39;] = $e->getLine();
        $data[&#39;msg&#39;] = $e->getMessage();
        return $data;
    }
 
    return $x;
}
 
$item = &#39;123&#39;;
 
$row = [
    &#39;0&#39;=>1,
];
 
 
print_r(checkString($item));
 
print_r(checkString($row));
 
/*
 * Fatal error:  Uncaught Exception: 不是字符串 in D:\xampp\htdocs\phperror.php:77
Stack trace:
#0 D:\xampp\htdocs\phperror.php(62): checkString(Array)
#1 {main}
  thrown in D:\xampp\htdocs\phperror.php on line 82
 
 
Array
(
    [0] => 1
)
 */
 
function checkString($y){
 
    if(!is_string($y)){
 
        throw new Exception(&#39;不是字符串&#39;);
    }
 
    return $y;
 
}
 
 
function printData($data){
 
    echo &#39;<pre class="brush:php;toolbar:false">&#39;;
 
    print_r($data);
}


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn