首頁 >後端開發 >php教程 >怎么在类的构造函数中终止类的运行

怎么在类的构造函数中终止类的运行

WBOY
WBOY原創
2016-06-13 10:37:271066瀏覽

如何在类的构造函数中终止类的运行
比如一个class


class   car   {

      public   $name;


    function   __construct()   {
        if   ($name= 'end ')
        //这里要设置终止类的执行

    }

    function   showname()   {
          echo   'name   is   '.$this-> name;
    }

}


然后

    $aaa=   new   car();

$aaa-> name= 'test1 ';
$aaa-> showname();   //打印   name   is   test1


$bbb=new   car();
$bbb-> name= 'end ';
$bbb-> showname();     //应该不显示任何内容

请问有没有类似循环中break这样的语句可以打断类的执行,但是在构造函数中位于该语句之前的语句还是能正常执行。

------解决方案--------------------

PHP code
class car  {    public   $name;    function   __construct()   {    }    public function   showname()   {        echo   'name   is   '.$this-> name;    }    public function setname($name){        $this->name=$name;        if ($this->name=='end'){            exit();        }    }}$aaa=new car();$aaa->setname('test1');$aaa-> showname();$bbb=new  car();$bbb->setname('end');$bbb-> showname();<br><font color="#e78608">------解决方案--------------------</font><br>想了一下 你是要停止 而不是终止整个运行<br>
PHP code
class car  {    public   $name;    protected $goon;    function   __construct()   {        $this->goon=true;    }    public function   showname()   {        if ($this->goon==true){            echo   'name   is   '.$this-> name;        }    }    public function setname($name){        $this->name=$name;        if ($this->name=='end'){            $this->goon=false;        }    }}$aaa=new car();$aaa->setname('test1');$aaa-> showname();$bbb=new  car();$bbb->setname('end');$bbb-> showname();$bbb=new  car();$bbb->setname('ttt');$bbb-> showname();<div class="clear">
                 
              
              
        
            </div>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn