Symfony2获取web目录绝对路径、相对路径、网址的方法


Posted in PHP onNovember 14, 2016

本文实例讲述了Symfony2获取web目录绝对路径、相对路径、网址的方法。分享给大家供大家参考,具体如下:

对于你的需求,Symfony2通过DIC提供了kernel服务,以及request(请求)的封装。

在controller里(在其他地方你可以自行注入kernel,这个服务是HttpKernel库里的一个类:好孩子都喜欢读源代码):

$appRoot = $this->get('kernel')->getRootDir(); // 这里得到的是app目录的绝对路径
// ... 然后你可以再定位到web目录了

web目录的相对路径?相对什么的路径?不管你的实际需求是什么,sf2给你提供了现成的工具,你可以比对获取相对路径:

use Symfony\Component\Filesystem\Filesystem;
$filesystem = new Filesystem();
$filesystem->makePathRelative($endPath, $startPath); // $endPath相对$startPath的相对路径

至于网址,你可以通过request获得:

// 在controll里:
$this->getRequest()->getHost(); // 主机名
$this->getRequest()->getHttpHost(); // 带协议的主机名
$this->getRequest()->getRequestUri(); // 请求的路径

还有很多很多的方法,可点击此处本站下载查看。

希望本文所述对大家基于Symfony2框架的PHP程序设计有所帮助。

PHP 相关文章推荐
mysql时区问题
Mar 26 PHP
PHP脚本中include文件出错解决方法
Nov 20 PHP
PHP开发中的错误收集,不定期更新。
Feb 03 PHP
php截取字符串函数分享
Feb 02 PHP
用php来限制每个ip每天浏览页面数量的实现思路
Feb 24 PHP
php制作文本式留言板
Mar 18 PHP
PHP编写文件多服务器同步程序
Jul 02 PHP
PHP正则匹配日期和时间(时间戳转换)的实例代码
Dec 14 PHP
PHP使用curl_multi实现并发请求的方法示例
Apr 29 PHP
Laravel 自动生成验证的实例讲解:login / logout
Oct 14 PHP
phpstudy2020搭建站点的实现示例
Oct 30 PHP
通过代码实例解析PHP session工作原理
Dec 11 PHP
CodeIgniter开发实现支付宝接口调用的方法示例
Nov 14 #PHP
PHP实现无限分类的实现方法
Nov 14 #PHP
php mysql获取表字段名称和字段信息的三种方法
Nov 13 #PHP
PHP编写daemon process 实例详解
Nov 13 #PHP
php版微信小店API二次开发及使用示例
Nov 12 #PHP
PHP Mysqli 常用代码集合
Nov 12 #PHP
PHP版微信小店接口开发实例
Nov 12 #PHP
You might like
PHP中通过fopen()函数访问远程文件示例
2014/11/18 PHP
PHP实现生成推广海报的方法详解
2018/03/14 PHP
thinkphp5使用无限极分类
2019/02/18 PHP
一个简单的JavaScript 日期计算算法
2009/09/11 Javascript
js中onload与onunload的使用示例
2013/08/25 Javascript
客户端js性能优化小技巧整理
2013/11/05 Javascript
jQuery实现平滑滚动到指定锚点的方法
2015/03/20 Javascript
Javascript实现字数统计
2015/07/03 Javascript
Node.js + Redis Sorted Set实现任务队列
2016/09/19 Javascript
详解vue2路由vue-router配置(懒加载)
2017/04/08 Javascript
如何理解Vue的.sync修饰符的使用
2017/08/17 Javascript
用JS实现根据当前时间随机生成流水号或者订单号
2018/05/31 Javascript
详解angular2.x创建项目入门指令
2018/10/11 Javascript
微信小程序车牌号码模拟键盘输入功能的实现代码
2018/11/11 Javascript
基于Webpack4和React hooks搭建项目的方法
2019/02/05 Javascript
Python提取网页中超链接的方法
2016/09/18 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
Django中ORM外键和表的关系详解
2019/05/20 Python
使用Python和Scribus创建一个RGB立方体的方法
2019/07/17 Python
详解python中自定义超时异常的几种方法
2019/07/29 Python
python3实现带多张图片、附件的邮件发送
2019/08/10 Python
详解PyTorch手写数字识别(MNIST数据集)
2019/08/16 Python
python3.7通过thrift操作hbase的示例代码
2020/01/14 Python
python GUI库图形界面开发之PyQt5窗口类QMainWindow详细使用方法
2020/02/26 Python
利用Python中的Xpath实现一个在线汇率转换器
2020/09/09 Python
美国价格实惠的在线眼镜网站:Zeelool
2020/12/25 全球购物
英国银首饰公司:e&e Jewellery
2021/02/11 全球购物
大学生家政服务项目创业计划书
2014/01/30 职场文书
房屋买卖协议书
2014/04/10 职场文书
企业安全生产标语
2014/06/06 职场文书
2014高三学生考试作弊检讨书
2014/12/14 职场文书
英文慰问信范文
2015/03/24 职场文书
《蜜蜂引路》教学反思
2016/02/22 职场文书
2019年中学生的思想品德评语集锦
2019/12/19 职场文书
PHP正则表达式之RCEService回溯
2022/04/11 PHP
Ruby处理YAML和json数据
2022/04/18 Ruby