ecmall 中Url体系改造实践
前面有过一篇ECMall 中URL体系的改造思路http://www.cnblogs.com/x3d/p/3627260.html
这两天基于这个思路,做了实践。
为什么要改造?
ECMall是完整的MVC体系,但没有完整的路由机制来进行路由的构造与反解析。
改造原则:不影响原有使用方式。
- 代码
includes/global.lib.php
/**
* 获取URL地址
*
* @author Garbin
* @param mixed $query
* @param string $rewrite_name
* @return string
*/
function url($query, $rewrite_name = null)
{
$query = ECRouter::queryStringToArray(array('query'=>$query));
//FIX 部分不带action键值对的情况
if(count($query)>1 && empty($query[ECRouter::URL_KEY_ACTION])){
$query = array_merge(array(ECRouter::URL_KEY_ACTION => ECRouter::DEFAULT_ACTION), $query);
}
return ECRouter::creatUrl(ECRouter::urlArrayToPathinfo($query));
}
eccore/ecmall.php
ECRouter::beginUrl();
/* 数据过滤 */
- 伪静态配置
pathinfo模式即可。
博客园的markdown编辑模式着实有待改进啊。
ecmall 中Url体系改造实践的更多相关文章
- ECMall 中URL体系的改造思路
EC系列的产品都已停止更新很久了,但其对中国中小电商企业的影响无疑是巨大的.很多公司,都是直接拿来即改,改了即用. 但他们都有个问题,代码是比较传统的开发模式过来的,尤其ecshop.ECMall系统 ...
- atitit.spring3 mvc url配置最佳实践
atitit.spring3 mvc url配置最佳实践 1. Url-pattern bp 1 2. 通用星号url pattern的问题 1 3. Other code 1 4. 参考 2 1. ...
- Lazy<T>在Entity Framework中的性能优化实践
Lazy<T>在Entity Framework中的性能优化实践(附源码) 2013-10-27 18:12 by JustRun, 328 阅读, 4 评论, 收藏, 编辑 在使用EF的 ...
- 调用链监控 CAT 之 URL埋点实践
URL监控埋点作用 一个http请求来了之后,会自动打点,能够记录每个url的访问情况,并将以此请求后续的调用链路串起来,可以在cat上查看logview 可以在cat Transaction及Eve ...
- Git-【技术干货】工作中Git的使用实践
Git-[技术干货]工作中Git的使用实践 置顶 2019-09-17 21:02:16 web洋仔 阅读数 11444更多 分类专栏: Git 版权声明:本文为博主原创文章,遵循CC 4.0 B ...
- mvc中Url.RouteUrl或者Html.RouteLink实现灵活超链接,使href的值随路由名称或配置的改变而改变[bubuko.com]
mvc,超链接除了直接写在a标签的href内还可以使用路由规则来生成,这样在改变了路由规则或者路由名称时不用再去代码中更改href的值,而且还容易遗漏.借助Url.RouteUrl或者Html.Rou ...
- Redis在WEB开发中的应用与实践
Redis在WEB开发中的应用与实践 一.Redis概述: Redis是一个功能强大.性能高效的开源数据结构服务器,Redis最典型的应用是NoSQL.但事实上Redis除了作为NoSQL数据库使用之 ...
- web工程中URL地址的推荐写法
三.web工程中URL地址的推荐写法 使用c标签<c:url value="" /> 会自动添加项目名 -> value中的值 前面要加 “/” 在JavaWeb ...
- JS中URL编码参数(UrlEncode)
JS中URL编码参数(UrlEncode) 网上有很多文字作品写涉及在JS中呈现类似UrlEncode功能时都是自定义参数来呈现,其实JS中本身就有那样的参数.参数parameter由于用类似URL的 ...
随机推荐
- form表单提交时选择性传值到后台
正常情况下form表单提交会把表单内的内容提交到后台,但是如果有些内容只是作为展示或者是标记而不想传到后台,我们采用如下方法: jsp页面如下,我们不想提交id为userIdMark和pwdMark的 ...
- http://my.oschina.net/u/1177710/blog/284608
http://my.oschina.net/u/1177710/blog/284608 http://chuhanzhi.com/?p=45 http://www.2cto.com/kf/201501 ...
- 《大规模web服务开发技术》笔记
前段时间趁空把<大规模web服务开发技术>这本书看完了,今天用一下午时间重新翻了一遍,把其中的要点记了下来,权当复习和备忘.由于自己对数据压缩.全文检索等还算比较熟,所以笔记内容主要涉及前 ...
- TestNG测试报告美化
因TestNG自带的测试报告不太美观,可以使用testng-xslt进行美化 1.下载testng-xslt包 2.把/src/main/resources/TestNG-results.xsl放到你 ...
- PHP的抽象类、接口的区别和选择[转载]
区别: 1.对接口的使用是通过关键字implements.对抽象类的使用是通过关键字extends.当然接口也可以通过关键字extends继承. 2.接口中不可以声明成员变量(包括类静态变量),但是可 ...
- [Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘终结篇:UniLua热更新全然解读
---------------------------------------------------------------------------------------------------- ...
- NET:Checkboxlist,Dropdownlist 加入ToolTip说明
ToolTip属性: ToolTip 类 (System.Windows.Controls) 表示创建弹出项的控件.该弹出项可显示界面中元素的相关信息.命名空间: System.Windows.Co ...
- JavaScript | 数据属性与访问器属性
属性类型 数据属性 - 包含一个数据值的位置,可以读取和写入值 [writable] 是否能修改属性的值 true [enumerable] 是否通过for in 循环返回属性(是否可以被枚举) tr ...
- Android实现小圆点显示未读功能
代码地址如下:http://www.demodashi.com/demo/13541.html 前言 以前我们实现这个功能都是用 BadgeView.java,大体就是将这个java类复制到自己的项目 ...
- Linux下Tomcat 8080 端口被占用的解决办法
希望可以帮助你们 一,停止tomcat 并执行#netstat -an|grep 8080 查看发现有许多80端口进程在里面 二,执行# lsof -i :8080|grep -v "P ...