异常处理

<?php
//旅游类
class Travel
{
    public $ticket = true;     //默认有票
    public $weather = true;    //天气晴朗
    public function buyTicket()
    {
        echo '买火车票<br>';
        if($this->ticket == false){
            throw new TravelException('没有火车票了<br>');
        }
    }
    public function play()
    {
        echo '到达目的地开始玩耍<br>';
        if($this->weather == false){
            //抛出异常信息
            throw new TravelException('下大雨了<br>');
        }
    }
    public function backHome()
    {
        echo '回家开始上班了<br>';
    }
}
//自定义异常类(需要继承Exception类),提供备用方案
class TravelException extends Exception
{
    public function byAir()
    {
        echo '买飞机票<br>';        
    } 
    public function fish()
    {
        echo '下大雨钓大鱼<br>';
    }
}

$travel = new Travel();
$travel -> ticket = false;
$travel -> weather = false;
try {
    $travel -> buyTicket();
}catch (TravelException $e){
    //不仅可以获得异常信息,还能提供备用方案
    echo $e -> getMessage();
    $e -> byAir();
}
try {
    $travel -> play();
}catch (TravelException $e){
    echo $e -> getMessage();
    $e -> fish();
}
$travel -> backHome();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值