问题很简单,但答案似乎很难得到。在Codeigniter中,我可以加载URL助手,然后简单地执行
echo base_url();
获取我网站的URL。在Laravel中也有类似的情况吗?
问题很简单,但答案似乎很难得到。在Codeigniter中,我可以加载URL助手,然后简单地执行
echo base_url();
获取我网站的URL。在Laravel中也有类似的情况吗?
当前回答
Laravel提供了很多帮助函数,根据你的需求,你可以简单地
使用Laravel Helpers的url()函数
但在Laravel 5.2中,你必须使用url('/')
下面是Laravel所有其他辅助函数的列表
其他回答
您可以使用URL facade,它允许您调用URL生成器
所以你可以这样做:
URL::to('/');
你也可以使用应用程序容器:
$app->make('url')->to('/');
$app['url']->to('/');
App::make('url')->to('/');
或者注入UrlGenerator:
<?php
namespace Vendor\Your\Class\Namespace;
use Illuminate\Routing\UrlGenerator;
class Classname
{
protected $url;
public function __construct(UrlGenerator $url)
{
$this->url = $url;
}
public function methodName()
{
$this->url->to('/');
}
}
你可以从laravel 5的请求处得到
request()->getSchemeAndHttpHost();
我找到了另一种方法来获取基本url来显示环境变量APP_URL的值
env('APP_URL')
它将显示类似http://domains_your//yours_website的基本url。注意,它假定您已经在.env文件(存在于根文件夹中)中设置了环境变量。
另一种可能:{{URL::route('index')}}
我用了这个,它在Laravel 5.3.18中为我工作:
<?php echo URL::to('resources/assets/css/yourcssfile.css') ?>
重要提示:这只会在你已经从你的URL中删除“公共”时起作用。要做到这一点,您可以查看这个有用的教程。