Heim  >  Artikel  >  Backend-Entwicklung  >  怎么在类的构造函数中终止类的运行

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

WBOY
WBOYOriginal
2016-06-13 13:17:231990Durchsuche

如何在类的构造函数中终止类的运行
比如一个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>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn