zoukankan      html  css  js  c++  java
  • PHP之异常处理模式

     1 <?php
     2 
     3     /*
     4         异常处理模式
     5             非php标准错误就是异常。
     6         php中错误的处理有两种情况:
     7             标准错误
     8             异常在面向对象的程序中,处理错误的机制。    
     9         异常:php在处理面向对象程序,所使用一种错误机制,将错误信息:原因,位置,封装成一个对象
    10 
    11         语法格式:
    12         try{
    13             //可能发生的异常代码
    14         }catch(Exception $e){
    15             //捕获异常,进行处理
    16         }
    17 
    18         类的使用者:捕获异常信息进行处理。
    19         类的定义者:抛出异常信息 Throw
    20 
    21         tips:异常一旦没有被捕获就会发生 致命级别错误。fetal error
    22 
    23         PDOException extends RuntimeException extends Exception
    24         运行时的异常。
    25 
    26     */
    27 
    28         try{
    29 
    30             $dsn = "mysql:localhost; port=3306; dbname=mytest";
    31             $username='root';
    32             $password='root';
    33             $options = array(
    34                 PDO::MYSQL_ATTR_INIT_COMMAND =>'set names utf8';    
    35             );
    36 
    37             //连接
    38             $pdo = new PDO($dsn, $username, $password, $options);
    39 
    40         }catch(PDOException $e){    
    41             echo $e->getMessage();  //获取错误信息(异常信息)
    42         }
    43 
    44     class Student{
    45         private $_gender;
    46 
    47         public function setGender($g){
    48             if (in_array($g, array('male','female','secrt'))) {
    49                 $this->_gender= $g;
    50             }
    51         }else{
    52             throw new Exception('message:你输入的有问题');
    53         }
    54     }    
    55 
    56     //类的使用者
    57     try{
    58         $s = new Student();
    59         $s->setGender('aa');
    60         var_dump($s);
    61     }catch(PDOException $pe){
    62         echo $pe->getMessage();
    63     }catch(Exception $e){
    64         echo $e->getMessage();
    65     }
    66 
    67 
    68     //自定义异常对象
    69     class MyException extends Exception{
    70         
    71     }    
  • 相关阅读:
    Redis 服务端程序实现原理
    Redis 中的客户端
    Redis 中的数据持久化策略(AOF)
    Redis 中的数据持久化策略(RDB)
    Redis 中的数据库
    Redis 的底层数据结构(对象)
    Redis 的底层数据结构(压缩列表)
    Redis 的底层数据结构(整数集合)
    又离职了~
    如何救活被屏蔽的主机,继续开发工作
  • 原文地址:https://www.cnblogs.com/sharecorner/p/6155474.html
Copyright © 2011-2022 走看看