suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Über die Rückgabemethode in Laravel

Warum in Laravel „xxx“ zurückgibt, wird xxx direkt zurückgegeben und auf der aktuellen Seite ausgegeben. Und wenn Sie „xxxx“ in PHP zurückgeben, wird nichts auf der Seite ausgegeben. Handelt es sich um dieselbe Methode? Wie kann ich die ursprüngliche Rückgabemethode von PHP in Laravel verwenden, ohne Inhalte auf der Seite auszugeben?

phpcn_u1582phpcn_u15822792 Tage vor1197

Antworte allen(3)Ich werde antworten

  • 滿天的星座

    滿天的星座2017-05-16 16:56:48

    在Laravel中,并不是因为你return才输出页面,return的东西还需要经过Response,再通过它的send方法
    发送出去。

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-16 16:56:48

    composer intasll 能下载半个互联网

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 16:56:48

    看了下Laravel源码,答案就在SymfonyComponentHttpFoundationResponse这个类里面

    入口文件调用了一个$response->send()方法

    public function send()
    {
        $this->sendHeaders();
        $this->sendContent();
    
        if (function_exists('fastcgi_finish_request')) {
            fastcgi_finish_request();
        } elseif ('cli' !== PHP_SAPI) {
            static::closeOutputBuffers(0, true);
        }
    
        return $this;
    }
    

    然后再看sendContent()方法

    public function sendContent()
    {
        echo $this->content;
    
        return $this;
    }
    

    这里看到还是使用的echo

    Antwort
    0
  • StornierenAntwort