php异常处理方法实例汇总_php技巧

本文实例讲述了php异常处理方法。分享给大家供大家参考。具体如下:

<?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("文件无法找到", 1);
  }
  if(!fopen($path, "r"))
  //如果文件无法打开,抛出异常对象
  {
    throw new Exception("文件无法打开", 2);
  }
}
?> 
<?php
$path = "D://in.txt";
//文件所在路径
file_open($path);
//调用file_open函数 

function file_open($path)
{
  if(!file_exists($path))
  //如果文件无法找到,抛出异常对象
  {
    throw new Exception("文件无法找到", 1);
  }
  if(!fopen($path, "r"))
  //如果文件无法打开,抛出异常对象
  {
    throw new Exception("文件无法打开", 2);
  }
}
?> 
<?php
function exception_handler($e)
//用于处理异常的函数
{
 echo "未捕获的异常:".$e->getMessage();
} 

set_exception_handler("exception_handler");
//设置异常处理函数
try //检测异常
{
  $path = "D://in.txt";
}
catch(Exception $e) //捕获异常
{
  echo $e->getMessage();
}
file_open($path); //调用函数打开文件
function file_open($path)
{
  if(!file_exists($path))
  //如果文件无法找到,抛出异常对象
  {
    throw new Exception("文件无法找到", 1);
  }
  if(!fopen($path, "r"))
  //如果文件无法打开,抛出异常对象
  {
    throw new Exception("文件无法打开", 2);
  }
}
?>
<?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("文件无法找到", 1);
  } 

  if(!fopen($path, "r"))
  {
    throw new Exception("文件无法打开", 2);
  }
}
?> 
<?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("文件无法找到", 1);
    //抛出FileExistsException异常对象
  } 

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

  }
}
?> 
<?php
class FileExistsException extends Exception{}
//用于处理文件不存在异常的类
class FileOpenException extends Exception{}
//用于处理文件不可读异常的类
$path = "D://in.txt";
try
{
  file_open($path); //尝试打开文件
}
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函数信息
}
catch(FileExistsException $e)
//如果产生FileExistsException异常则提示用户确认文件位置
{
  echo "程序在运行过程中发生了异常:".$e->getMessage()."/n";
  echo "请确认文件位置。";
}
catch(FileOpenException $e)
//如果产生FileOpenException异常则提示用户确认文件的可读性
{
  echo "程序在运行过程中发生了异常:".$e->getMessage()."/n";
  echo "请确认文件的可读性。";
}
function file_open($path)
{
  if(!file_exists($path))
  //如果文件不存在,则输出错误
  {
    throw new FileExistsException("文件无法找到", 1);
  } 

  if(!fopen($path, "r"))
  {
    throw new FileOpenException("文件无法打开", 2);
  }
}
?> 
<?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)
{
  try
  {
    if(!file_exists($path))
    {
      throw new FileExistsException("文件无法找到", 1);
    } 

    if(!fopen($path, "r"))
    {
      throw new FileOpenException("文件无法打开", 2);
    }
  }
  catch(Exception $e)               //捕获异常
  {
    echo "file_open函数在运行过程中出现异常";
    throw $e;                  //重掷异常
  }
}
?>

希望本文所述对大家的php程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php
异常处理
java异常处理实例、c 异常处理实例、java异常处理的实例、物流异常处理技巧培训、物流异常处理技巧,以便于您获取更多的相关知识。

时间: 2024-11-08 18:27:27

php异常处理方法实例汇总_php技巧的相关文章

php异常处理方法实例汇总

          本文实例讲述了php异常处理方法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 <?php $path = "D://in.txt"; try //检测异常 { file_open($path); } catch(Exception $e) //捕获异常 { echo $e->getMessage(); }   function f

php常用字符串比较函数实例汇总_php技巧

本文实例汇总了php常用字符串比较函数.分享给大家供大家参考.具体分析如下: substr_compare() 函数从指定的开始长度比较两个字符串,该函数返回: 0 - 如果两字符串相等,<0 - 如果 string1 (从开始位置)小于 string2,>0 - 如果 string1 (从开始位置)大于 string2. 语法:substr_compare(string1,string2,startpos,length,case),代码如下: 复制代码 代码如下: $str1="h

PHP实现上一篇下一篇的方法实例总结_php技巧

本文实例分析了PHP实现上一篇下一篇的方法.分享给大家供大家参考,具体如下: php实现上一篇下一篇这个主要是通过sql来根据当前的id来进行判断然后筛选出当前ID之前的数据或ID之后的数据了就这么简单,具体的我们来看看. 实现网站文章里面上一篇和下一篇的sql语句的写法. 当前文章的id为 $article_id,当前文章对应分类的id是$cat_id,那么上一篇就应该是: 复制代码 代码如下: SELECT max(article_id) FROM article WHERE article

PHP中静态变量的使用方法实例分析_php技巧

本文实例讲述了PHP中静态变量的使用方法.分享给大家供大家参考,具体如下: 1.定义静态变量 public static $endpoint,$accessKeyId,$accessKeySecret,$bucket; 2.静态变量赋值 protected function _initialize() { self::$endpoint = C('OSS_ENDPOINT'); self::$accessKeyId = C('OSS_ACCESS_ID'); self::$accessKeySe

php文件读取方法实例分析_php技巧

本文实例讲述了php文件读取方法.分享给大家供大家参考.具体如下: <?php $file = fopen("Test//file.txt", "r"); //打开文件 echo fgetc($file); //读取文件中的一个字符 fclose($file); //关闭文件 ?> <?php $file = fopen("Test//file.txt", "r"); //打开文件 echo fgets($f

php中文字符串截取方法实例总结_php技巧

本文实例总结了php中文字符串截取方法,非常实用的技巧.分享给大家供大家参考.具体方法分析如下: 用PHP函数substr截取中文字符可能会出现乱码,主要是substr可能硬生生的将一个中文字符"锯"成两半. 解决办法如下: 1.使用mbstring扩展库的mb_substr截取就不会出现乱码了. 2.自己书写截取函数,但效率不如用mbstring扩展库来得高. 3.如果仅是为了输出截取的串,可用如下方式实现:substr($str, 0, 30).chr(0). substr()函数

php一维二维数组键排序方法实例总结_php技巧

本文实例总结了php一维二维数组键排序方法.分享给大家供大家参考.具体方法如下: 在php中数组排序一直是一个老生常谈的问题,下面我们来集中讲一下关于在php中一维数组与二维数组排序的实现程序,相信对大家有一定的参考借鉴价值. 功能:对数组进行重新排序. 说明:冒泡排序 (一维数组)(二维数组某个健排序) 两两比较待排序数据元素的大小,发现两个数据元素的次序相反时即进行交换,直到没有反序的数据元素为止 设想被排序的数组R[1..N] 垂直竖立,将每个数据元素看作有重量的气泡,从下往上扫描数组,凡

PHP生成随机数的方法实例分析_php技巧

通常情况下,当我们要生成一个随机字符串时,总是先创建一个字符池,然后用一个循环和mt_rand()或rand()生成php随机数,从字符池中随机选取字符,最后拼凑出需要的长度. 复制代码 代码如下: function randomkeys($length) { $pattern = '1234567890abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLOMNOPQRSTUVWXYZ,./&l t;>?;#:@~[]{}-_=+)(*&^%$?!'; //

PHP中常用数组处理方法实例分析_php技巧

1.array_shift()将数组的第一个单元移出再返回,这对有时候数组的第一个单元要单独处理很方便. 复制代码 代码如下: <? $tmparray = array("1", "2", "3", "4"); $tmparray = array_shift ($tmparray); print_r($tmparray); ?> 2.array_chunk() 将一个数组分割成多个数组 ,后面参数控制数组单元数目.