比如一个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这样的语句可以打断类的执行,但是在构造函数中位于该语句之前的语句还是能正常执行。

解决方案 »

  1.   

    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();
      

  2.   

    想了一下 你是要停止 而不是终止整个运行
    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();
      

  3.   

    不 关在哪里,请记住exit()