在视图作曲家中使用 $request

Use $request in view composer

我正在尝试编写视图编辑器,

class CountryCodeComposer
{

    function compose($view)
    {
         $code = substr(file_get_contents('http://ipinfo.io/' . $request->getClientIp() . '/country'), 0, 2);
       $view->with('code', $code);
    }
}

但是这段代码显示错误 Undefined variable: request,

如何将 $request 传递给 compose 方法?

$request->getClientIp()替换为request()->getClientIp()

如果有人正在寻找全局 request() 辅助函数的替代方法。这是一个例子:

<?php

namespace App\Http\ViewComposers;

use Illuminate\View\View;

/**
 * Connect Http Request class
 */
use Illuminate\Http\Request;

class ExampleComposer
{   
    private $request;

    /**
     * Pass $request
     */
    public function __construct(Request $request)
    {
       $this->request = $request;
    }

    public function compose(View $view)
    {
        // use $this->request
    }
}