博客
关于我
ecmall开发记录(一)
阅读量:788 次
发布时间:2023-01-24

本文共 1211 字,大约阅读时间需要 4 分钟。

ecmall是一个开源的C2C网上商城系统,功能还是有些完善的。不过因为ShopEx收购了它,估计是打算放到冷宫里处理。不过免费的ECMall还是很不错的,毕竟程序员的座右铭就是自己动手,让自己的衣 goreشت足。

我是.NET出身,对PHP只大概了解一点点。可惜公司只有我一个技术人员,没得人帮忙,我只能自己慢慢摸索了。

刚拿到ECMall 父 entrepreneurial code的时候,第一印象就是一堆include和require文件,这点可以理解,就像我们用.NET的using语句一样。然后我看到了ECMall的启动方法。

ECMall的启动方法很 directive, 代码这样写着:

ECMall:: startup(array(    'default_app' => 'default',    'default_act' => 'index',    'app_root' => ROOT_PATH . 'app',    'external_libs' => array(        ROOT_PATH . 'includes/global.lib.php',        ROOT_PATH . 'includes/libraries/time.lib.php',        ROOT_PATH . 'includes/ecapp.base.php',        ROOT_PATH . 'includes/plugin.base.php',        ROOT_PATH . 'app/frontend.base.php',        ROOT_PATH . 'includes/subdomain.inc.php',    ),));

通过这段代码我马上知道,ECMall应该采用MVC框架的设计方式。在/app 目录下面,每个以*.app.php结尾的文件都是一个控制器。看到 'default_app' 是 'default',我就去找找default.app.php文件,终于在里面找到了比较有用的index()方法,这应该就是网站的入口了。

接下来我发现index()方法里面分配了好多变量,看名字还是大概能猜到它们的作用。方法最后调用了一个display()函数。虽然我对PHP项目的格式影响了点,但这应该就是把变量传递到模板里的操作。

接着我去themes/mall/default 找到了index.html文件,只看到了一堆div和像<!--{widgets page=index area=banner}-- >之类的模板标记。ECMall的这个widgets挂件系统挺方便,但二次开发起来可能会有点麻烦。

总之,ECMall是一个不错的开源系统,让我学到了不少关于MVC和PHP开发的东西。它虽然有些不够完善,但路上的每一步教训都是宝贵的经验。

转载地址:http://aqeyk.baihongyu.com/

你可能感兴趣的文章
乒乓球问题
查看>>
Trae国内版发布,中国首款AI 原生IDE 正式上线,配置Doubao-1.5-pro,支持切换满血版DeepSeek 模型
查看>>
java定时器,留着用
查看>>
多线程,高并发
查看>>
linux(CENTOS)系统各个目录的作用详解
查看>>
回溯法介绍
查看>>
2025最新智能优化算法:改进型雪雁算法(Improved Snow Geese Algorithm, ISGA)求解23个经典函数测试集
查看>>
有了Trae,人人都是程序员的时代来了
查看>>
Servlet的三个基本方法
查看>>
基于Trae AI的新SSH Remote功能:服务器Python接口日志排查实战与技术展望
查看>>
反 TypeScript
查看>>
数据分析与处理方法
查看>>
打开有惊喜
查看>>
AUTOSAR_SWS_CANDriver4
查看>>
程序员都看不懂的代码
查看>>
LLM+多智能体协作:基于CrewAI与DeepSeek的邮件自动化实践
查看>>
404页面自动跳转源码
查看>>
458. 可怜的小猪
查看>>
46:把数字翻译成字符串(动态规划)
查看>>
49天精通Java,第28天,Java lambda表达式
查看>>