laravel获取路径的方法总汇
laravel获取路径的方法总汇及问题
先写个测试程序
<?php
echo "<pre>";
$vendorDir = dirname(dirname(__FILE__)); //D:\wamp64\www\mydir
echo (dirname(__FILE__)),"\n"; //D:\wamp64\www\mydir
echo dirname(dirname(__FILE__)),"\n"; //D:\wamp64\www\
echo dirname(dirname(dirname(__FILE__))),"\n"; //D:\wamp64\
echo realpath(__DIR__.'/../')."\n"; //D:\wamp64\www\
?>
除了HTML本身支持的 DIR, FILE, dirname等方法以外, laravel 自己也提供了不少方法,先记录一下备忘,这些还没有测试,比如,
<a href="{{ url('home/mydir') }}">
<a href="{{ route('mydir') }}">
<a href="{{ action('HomeController@index') }}">
<a href="绝对路径">
return redirect('home/mydir');
return redirect()->to('home/mydir');
return redirect()->action('HomeController@index');
return redirect()->route('mydir');
return redirect()->back();
return back();
public_path('uploads');
base_path('xx');
app_path('xx');
resource_path('xx');
laravel有些怪现象,比如我把资源放在mydir/resources/assets/下面,怎么样都找不到,
<script src={{resource_path('assets\\js\\jquery.dropotron.min.js')}}></script>
后台调试给出的结果是,
指向“d:\wamp64\www\laravel\mydir\resources\assets\js\jquery.dropotron.min.js”的 <script> 加载失败。
而这个路径
d:\wamp64\www\laravel\mydir\resources\assets\js\jquery.dropotron.min.js
百分百是没问题的,不知何故。
干脆把事个assets目录拖到public下面,连路径都不用设置,一切OK。先凑各着用吧。头大了!