我有一个有很多方法的类,我想找到让类从一个方法跳转到另一个方法的方法。
class foo{
private $state = false;
function a(){
if($this->state == false){
//jumpt to method b
}
//other code
}
function b(){
//
}
function c(){
}
}
正如您所看到的,我正试图在a()
之后跳过b()
暂停a()
内的所有内容。
答案 0 :(得分:2)
function a(){
if($this->state == false){
$this->b();
return;
}
//other code
}
这将调用b()
,并根据需要跳过a()
中的所有其他内容。
答案 1 :(得分:1)
对于gosub
类型的行为,它将返回a()
并继续,然后:
function a(){
if($this->state == false){
$this->b();
}
//other code
}
对于真正的goto
类型的行为不能返回a()
:
function a(){
if($this->state == false){
return $this->b();
}
//other code
}
答案 2 :(得分:1)
您只需将其余代码放入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;
}