ZF的当前路径有关问题?求帮忙。多谢

php中文网
发布: 2016-06-13 13:36:47
原创
927人浏览过

ZF的当前路径问题?求帮忙。谢谢
小弟刚研究zendframework一段时间,遇到一个问题。希望各位大侠帮忙解决,先谢谢了
我做的一个后台,adminControll.php
访问是 http://网址/admin
看了很多地方包括教程之类的都有说了在初始化的时候写上这句,
$this->view->baseUrl = $this->_request->getBaseUrl();
但是我输出看了,只是一个 .
而且根本不能起到什么作用,我很多链接的地方都用 $this->baseUrl放在前面,但是打开页面老是出错,就是得不到正确的链接地址,到现在我只能写死,比如网址是http://www.123.com,现在要看一个articleAction 。那么我在页面上都会写死,http://www.123.com/admin/article
如果我换做是$this->baseUrl."/admin/article",可能会出错,比如我在单独一个页面上接上参数的时候就出错了http://www.123.com/admin/article/act/edit/id/1。这样写的话,得到的路径就很糟糕了。
可能我糊里糊涂表达的不太清楚,不知道大家能理解不?
这个路径问题害的我样式啊,图片啊都有可能会出错了。除非把路径写死。
在http://www.123.com/admin/article 页面用
显示正确.
而在http://www.123.com/admin/article/act/edit/id/1 这个页面上就出错了。但是它们调用的是同一个文件,地址路径是一样的,在网址上看来却是多了好多个文件夹。所以这样就错了。
我现在是写死了。直接
weburl;?>就是http://www.123.com
我想来想去觉得这种方法太死了。
还有什么其他办法吗?
求解,谢谢高手帮忙。

------解决方案--------------------
嗯,其实zf了很多获取url的功能。提供了很多方法可以灵活变通。
如果是在phtml中: 
$this->baseUrl()表示的是
如果项目是demo1
表示的就是/demo1/public
既:
http://localhost/demo1/public
如果所以你的css在你可以用
echo $this->baseUrl().'/styles/global.css'
即:
http://localhost/demo1/public/styles/global.css

。baseUrl的含义就是从去掉域名开始算的。以后像是资源的引用进来不要用相对路径。用得话,要想清楚了

如果你获取网站的网址用
$this->serverUrl()会返回http://localhost


最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号