新在Symfoob娱乐下载ny 2.2:新URL生成选项
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
路由系统可能是Symfony中最重要组成部分之一。ob娱乐下载这是一个复杂的怪兽,它必须灵活,feature-full,同时性能。
今天,让我们看到一个非常好的特性,它被添加到发电机系统。我假设你都知道Symfony是能够产生两种类型的链接:ob娱乐下载
绝对url:
http://example.org/blog/what-a-wonderful-world
- 嫩枝
- PHP
1
{{url(“博客”,{邮报》:“这是一个多么美妙的世界”})}}
1 2
美元发电机- >生成(“博客”,数组(“职位”= >“这是一个多么美妙的世界”),真正的);美元发电机- >生成(“博客”,数组(“职位”= >“这是一个多么美妙的世界”),UrlGeneratorInterface::ABSOLUTE_URL);
domain-relative url(默认的):
/博客/这是一个多么美妙的世界
- 嫩枝
- PHP
1
{{路径(“博客”,{邮报》:“这是一个多么美妙的世界”})}}
1 2
美元发电机- >生成(“博客”,数组(“职位”= >“这是一个多么美妙的世界”));美元发电机- >生成(“博客”,数组(“职位”= >“这是一个多么美妙的世界”),UrlGeneratorInterface::ABSOLUTE_PATH);
Symfonob娱乐下载y 2.2 (beta2),有两个新的url可以生成:
schema-relative url:
/ /example.org/blog/what-a-wonderful-world
- 嫩枝
- PHP
1
{{url(“博客”,{邮报》:“这是一个多么美妙的世界”},true)}}
1
美元发电机- >生成(“博客”,数组(“职位”= >“这是一个多么美妙的世界”),UrlGeneratorInterface::NETWORK_PATH);
path-relative url:
. . /
基于当前URL(相对路径)- 嫩枝
- PHP
1
{{路径(“博客”,{邮报》:“这是一个多么美妙的世界”},true)}}
1
美元发电机- >生成(“博客”,数组(“职位”= >“这是一个多么美妙的世界”),UrlGeneratorInterface::RELATIVE_PATH);
Schema-relative url有用例如当你需要包含一个资源从外部网站托管(想想jQuery从一个CDN)在网站上通过HTTP或HTTPS访问一些页面。而不是使用一个JavaScript切换协议根据页面上使用的协议,并避免恼人的浏览器警告,只使用一个schema-relative URL:
1
/ /ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
Path-relative url是非常方便的,如果你需要生成静态HTML文件,可以下载在浏览器中浏览本地(例如博客认为静态生成器)。假设你在http://example.org/blog/what-a-wonderful-world
页面,您希望创建一个链接到博客主页,URLhttp://example.org/blog/
相对路径的URL将:。/
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
使用ob娱乐下载\组件\HttpFoundation\请求;使用ob娱乐下载\组件\路由\RouteCollection;使用ob娱乐下载\组件\路由\路线;使用ob娱乐下载\组件\路由\RequestContext;使用ob娱乐下载\组件\路由\发电机\UrlGenerator;/ /路线美元路线=新RouteCollection ();美元路线- >add (“页面”,新路线(“/博客/{蛞蝓}”));美元路线- >add (“博客”,新路线(“/博客/”));/ /当前上下文美元请求=请求::创建(“http://example.org/blog/what-a-wonderful-world/comments”);美元上下文=新RequestContext ();美元上下文- >fromRequest (美元请求);/ /创建一个发电机美元发电机=新UrlGenerator (美元路线,美元上下文);/ /生成一个相对路径的URL(将输出。/)回声美元发电机- >生成(“博客”,数组(),UrlGeneratorInterface::RELATIVE_PATH);
说到一个静态的博客发电机,我们可能需要一个全球设置从domain-relative url(默认)转换到path-relative url(参见票# 6631)当使用路径
树枝函数模板。
评论
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。
Grégoire Pineau is a certified Symfony engineer and a certified Twig designer.
Get certified! Online exams available in all countries.
Register Now