我有一个有很多方法的类,我想找到让这个类从一个方法跳到另一个方法的方法。
class foo{
private $state = false;
function a(){
if($this->state == false){
//jumpt to method b
}
//other code
}
function b(){
//
}
function c(){
}
}
正如您所看到的,我正试图从a()
跳到b()
,在该语句之后停止a()
中的所有内容。
function a(){
if($this->state == false){
$this->b();
return;
}
//other code
}
这将调用b()
,并根据需要跳过a()
中的所有其他内容。
对于gosub
类型的行为,它将返回到a()
并继续,那么:
function a(){
if($this->state == false){
$this->b();
}
//other code
}
对于真正的goto
类型bahaviour不返回a()
:
function a(){
if($this->state == false){
return $this->b();
}
//other code
}
您只需要将其余代码放入else:
class foo{
private $state = false;
function a(){
if($this->state == false){
$this->b();
}
else {
//other code
}
}
function b(){
//
}
function c(){
}
}
或者您可以在致电b 后返回
if($this->state == false){
$this->b();
return;
}