Laravel 4之URL生成

获取当前URL

获取当前URL有两种方式,URL::current()URL::full(),区别是返不返回GET参数如

  1. Route::get('/current/url',function()
  2. {
  3. return URL::current();
  4. });

输入/current/url?foo=bar时只显示http://myapp.dev/current/url。使用URL::full()则显示http://myapp.dev/current/url?foo=bar

获取之前的URL

  1. // app/routes.php
  2. Route::get('first',function()
  3. {
  4. // Redirect to the second route.
  5. returnRedirect::to('second');
  6. });
  7. Route::get('second',function()
  8. {
  9. eturn URL::previous();
  10. });

输入/first,返回http://loacahost,URL::previous()返回的是之前到first的路由

生成URL

使用URL::to()生成URL,如

  1. Route::get('example',function()
  2. {
  3. return URL::to('another/route', array('foo','bar'));
  4. });

生成的URL为http://myapp.dev/another/route/foo/bar,如需将HTTP协议变为HTTPS,则用

  1. URL::to('another/route', array('foo','bar'),true);

或是使用

  1. URL::secure('another/route', array('foo','bar'));

使用路由别名生成URL

  1. Route::get('the/best/avenger', array('as'=>'ironman',function()
  2. {
  3. return'Tony Stark';
  4. }));
  5. Route::get('example',function()
  6. {
  7. return URL::route('ironman');
  8. });

使用URL参数

  1. Route::get('the/{first}/avenger/{second}', array(
  2. 'as'=>'ironman',
  3. function($first, $second){
  4. return"Tony Stark, the {$first} avenger {$second}.";
  5. }
  6. ));
  7. Route::get('example',function()
  8. {
  9. return URL::route('ironman', array('best','ever'));
  10. });

到控制器的URL

  1. // Route to the Stark controller.
  2. Route::get('tony/the/{first}/genius','Stark@tony');
  3. Route::get('example',function()
  4. {
  5. return URL::action('Stark@tony', array('narcissist'));
  6. });

到资源的绝对URL

  1. Route::get('example',function()
  2. {
  3. return URL::asset('img/logo.png');
  4. });

返回http://myapp.dev/img/logo.png,同样,使用HTTPS

  1. return URL::asset('img/logo.png',true);

或是

  1. return URL::secureAsset('img/logo.png');

在视图中生成URL

使用url()在视图中生成URL,方法跟参数跟以上的没什么区别,使用如下

  1. <ahref="">My Route</a>

或是

  1. <ahref="">My Route</a>

使用路由别名

  1. <ahref="">My Route</a>

使用控制器

  1. <ahref="">My Route</a>

使用资源

  1. <ahref="">My Route</a>
  2. <ahref="">My Route</a>

结束

[转]Laravel 4之URL生成的更多相关文章

  1. Laravel 深入理解路由和URL生成

    原文地址: Laravel 深入理解路由和URL生成 在模板中我们一般不会直接写死url,而是用url助手生成url,本文介绍一下url助手的使用以及遇到的一些比较头疼的问题. 首先,我们创建了一个路 ...

  2. ASP.NET根据URL生成网页缩略图示例程序(C#语言)

    工作中可能马上要用到根据URL生成网页缩略图功能,提前做好准备. 在网上找了份源码,但是有错误:当前线程不在单线程单元中,因此无法实例化 ActiveX 控件“8856f961-340a-11d0-a ...

  3. YII框架路由和URL生成

    路由和URL生成 当一个YII应用开始处理一个请求的时候,它首先要做的便是将请求的URL转化成一个路由.路由的作用是用于后续实例化相应的控制器和操作,以便处理请求,整个处理过程便叫做路由.路由的逆过程 ...

  4. thinkphp URL规则、URL伪静态、URL路由、URL重写、URL生成(十五)

    原文:thinkphp URL规则.URL伪静态.URL路由.URL重写.URL生成(十五) 本章节:详细介绍thinkphp URL规则.URL伪静态.URL路由.URL重写.URL生成 一.URL ...

  5. 使用Visual Studio 2010写Data Url生成工具C#版本

    声明:本文系本人按照真实经历原创.未经许可,谢绝转载. 此文百度经验版本号:怎样用Visual Studio 2010打造Data Url生成工具 源代码下载:用Visual Studio 2010编 ...

  6. HTML5——Data Url生成

    HTML5——Data Url生成 <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...

  7. thinkphp3.2笔记(2)调试模式,配置项C,创建模块, 四种URL模式,URL生成,跳转

    一.调试模式 TP的调试模式其实就控制了TP关于配置信息以及函数的缓存功能 如果开启了调试模式,每次访问项目,Tp都会去加载最新的配置以及函数信息. 如果关闭了调试模式,当tp第一次访问时会降配置以及 ...

  8. iOS 根据url生成二维码贴到底图上

    根据url 生成指定尺寸的二维码图片 UIImage * createBinaryCodeImg(const char * url ,CGFloat size) { //create binary c ...

  9. C#根据url生成唯一的key

    根据url生成唯一的idkey,记录并分享: public class UrlToUniqueKey { ); , ] { { 0L, 0L }, { -4611686018427387904L, - ...

随机推荐

  1. [AngularJS] Angular 1.5 multiple transclude

    If you know ui-router, multi-transclude should be easy for you also. In previou Angular version < ...

  2. App版本更新时对SQLite数据库升级或者降级遇到的问题

    SQLite是Android内置的一个很小的关系型数据库.SQLiteOpenHelper是一个用来辅助管理数据库创建和版本升级问题的抽象类.我们可以继承这个抽象类,实现它的一些方法来对数据库进行自定 ...

  3. JavaScript 中的事件设计

    1. 事件绑定的几种方式  主要介绍一下 最常用的事件设计 其他就稍微带过. 直接在代码里面添加onclick指定函数名字. B) 在JS代码中通过dom元素的onclick等属性 这种做法this表 ...

  4. python - 类的字段

    一.静态字段:保存在类里面 1.创建静态字段: class Foo: CC = 123 # 字段(静态字段),保存在类里 def __init__(self): self.name = 'alex' ...

  5. StartService与BindService

    效果图 MainActivity.java package com.wangzhen.servicedemo; import com.lidroid.xutils.ViewUtils; import ...

  6. web 调用OPC HRESULT:0x80070005 (E_ACCESSDENIED))

    除了配置DCOM外,还需要在web.config里面添加设置系统管理员权限的帐号和密码<identity impersonate="true" userName=" ...

  7. oracle数据库ID自增长

    使用sequence --创建sequenceCREATE SEQUENCE emp_sequence      INCREMENT BY 1  -- 每次加几个      START WITH 1  ...

  8. SDOI HH的项链 HEOI采花

    题目大意: SDOI求一个区间内只出现一次的数的个数.多组询问. HEOI 求一个区间内出现至少两次的数的个数.多组询问. SDOI HH'neckplace如果每次询问都是1..r的话,那么我们只要 ...

  9. 发送trim值

    发送寄存器和地址上的所有值 uart_send(0xa1); uart_send(*((char code*)0x2001)); uart_send(*((char code*)0x2002)); u ...

  10. birt报表图标中文显示为框框的解决方法

    birt报表中图标部分的中文显示为框框,其他部分中文显示正常 解决办法:修改jdk中的字体设置/jdk1.6.0_13/jre/lib /fonts/fonts.dir 1.将宋体字体copy到/jd ...