我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

php数据库异常处理 php数据库启动不了

PHP5中的异常处理详解[1]

    首先是try catch

临沂ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

〈?php    $path = D:\\\\in txt ;    try //检测异常    {    file_open($path);    }    catch(Exception $e) //捕获异常    {    echo $e 〉getMessage();    }

function file_open($path)    {    if(!file_exists($path)) //如果文件无法找到 抛出异常对象    {    throw new Exception( 文件无法找到 );    }

if(!fopen($path r )) //如果文件无法打开 抛出异常对象    {    throw new Exception( 文件无法打开 );    }    }    ?〉

注意用$e 〉getMessage()输出异常信息

输出异常完整信息

〈?php    $path = D:\\\\in txt ;

try    {    file_open($path); //尝试打开文件    }    catch(Exception $e)    {    echo 异常信息 $e 〉getMessage() \\n ; //返回用户自定义的异常信息    echo 异常代码 $e 〉getCode() \\n ; //返回用户自定义的异常代码    echo 文件名 $e 〉getFile() \\n ; //返回发生异常的PHP程序文件名    echo 异常代码所在行 $e 〉getLine() \\n ; //返回发生异常的代码所在行的行号    echo 传递路线 ;    print_r($e 〉getTrace()); //以数组形式返回跟踪异常每一步传递的路线    echo $e 〉getTraceAsString(); //返回格式化成字符串的getTrace函数信息    }

function file_open($path)    {    if(!file_exists($path)) //如果文件不存在 则抛出错误    {    throw new Exception( 文件无法找到 );    }

if(!fopen($path r ))    {    throw new Exception( 文件无法打开 );    }    }    ?〉

3 扩展异常 即自定义异常

〈?php    class FileExistsException extends Exception{} //用于处理文件不存在异常的类    class FileOpenException extends Exception{} //用于处理文件不可读异常的类

$path = D:\\\\in txt ;

try    {    file_open($path);    }    catch(FileExistsException $e) //如果产生FileExistsException异常则提示用户确认文件位置    {    echo 程序在运行过程中发生了异常 $e 〉getMessage() \\n ;    echo 请确认文件位置 ;    }    catch(FileOpenException $e) //如果产生FileOpenException异常则提示用户确认文件的可读性    {    echo 程序在运行过程中发生了异常 $e 〉getMessage() \\n ;    echo 请确认文件的可读性 ;    }    catch(Exception $e)    {    echo [未知异常] ;    echo 异常信息 $e 〉getMessage() \\n ; //返回用户自定义的异常信息    echo 异常代码 $e 〉getCode() \\n ; //返回用户自定义的异常代码    echo 文件名 $e 〉getFile() \\n ; //返回发生异常的PHP程序文件名    echo 异常代码所在行 $e 〉getLine() \\n ; //返回发生异常的代码所在行的行号    echo 传递路线 ;    print_r($e 〉getTrace()); //以数组形式返回跟踪异常每一步传递的路线    echo $e 〉getTraceAsString(); //返回格式化成字符串的getTrace函数信息    }

function file_open($path)    {    if(!file_exists($path))    {    throw new FileExistsException( 文件无法找到 ); //抛出FileExistsException异常对象    }

if(!fopen($path r ))    {    throw new FileOpenException( 文件无法打开 ); //抛出FileOpenException异常对象

lishixinzhi/Article/program/PHP/201311/21471

PHP异常处理的疑惑

SQL错误是捕获不了的,因为PHP只要成功的把SQL命令提交给了数据库服务器就算成功,至于数据库里面执行是否成功,必需在每个语句之后检测,例如:

$db=mysql_connect(...);

if (!$db){

echo '连接数据库失败,错误原因:'.mysql_error();

exit;

}

再如:

$sql='...';

$res=mysql_query($sql);

if (!$res){

echo '执行SQL语句错误,SQL语句:'.$sql.'br错误原因:'.mysql_error();

exit;

}

php访问数据库出错:Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given i

php访问数据库出错:Warning: mysql_fetch_array(),是参数设置错误造成的,解决方法如下:

1、首先打开电脑后,同时按住电脑键盘的【开始键】和【R键】,打开电脑的程序运行弹窗。

2、在电脑左下角弹出的程序运行弹窗中,输入字母【cmd】,然后点击【确定】按钮。

3、在弹出的运行界面中,输入【mysql -u root -p】,此时会出现属于密码的命令行,在后面输入自己数据库的密码即可。

4、数据库连接成功后,输入【show global variables like 'port';】,注意不要忘记输入最后的分号。

5、在展现出来的Mysql信息中,可以看到port的值,这个值就是本地数据库的端口号。,一般都是3306。

6、知道本地数据库端口号后,回到php代码的数据库配置中将端口号改成正确的端口号即可,这样就不会报数据库端口异常的错误了。


网页标题:php数据库异常处理 php数据库启动不了
文章网址:http://mswzjz.cn/article/ddspdih.html

其他资讯