Maison  >  Article  >  développement back-end  >  状态模式,return 无返回值的问题

状态模式,return 无返回值的问题

WBOY
WBOYoriginal
2016-08-08 09:06:371128parcourir

代码如下:
我使用echo是有值的,为啥我使用return就获取不到值呢?

<code>class GoodNight implements IState  
{ 
    public function WriteCode(Work $w)  
    {  
        if($w->hourSetState(new GoodAtNight());  
            $w->WriteCode();  
        }   
    }  
} </code>

回复内容:

代码如下:
我使用echo是有值的,为啥我使用return就获取不到值呢?

<code>class GoodNight implements IState  
{ 
    public function WriteCode(Work $w)  
    {  
        if($w->hourSetState(new GoodAtNight());  
            $w->WriteCode();  
        }   
    }  
} </code>

谢谢邀请!因为你实例化掉用了本身,本身是return返回而不是输出之类的,所以不会出现值,这很正常!如果你直接echo掉用的就可以看到输出值了。

<code>class GoodNight implements IState  
{ 
    public function WriteCode(Work $w)  
    {  
        if($w->hourSetState(new GoodAtNight());  
            echo $w->WriteCode();  // 在这里echo就有值了
        }   
    }  
} </code>
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn