shopnc 商城源码阅读笔记--开篇概述
關(guān)于shopnc
以下是摘抄自百度百科的關(guān)于shopnc的介紹:
ShopNC商城系統(tǒng),是天津市網(wǎng)城天創(chuàng)科技有限責(zé)任公司開發(fā)的一套多店模式的商城系統(tǒng)。 本系統(tǒng)具有商城系統(tǒng)非常完整和專業(yè)的功能與流程,系統(tǒng)包括了訂單管理、商品管理、購物車功能、網(wǎng)上支付功能、信息管理、客戶管理、會員體系設(shè)置、優(yōu)惠促銷、廣告管理、第三方帳號登錄等功能模塊,可以實現(xiàn)快速搭建各種類型的個性化電商運營服務(wù)平臺。
?
事實上shopnc有很多套不同類型的系統(tǒng),我這次主要閱讀的是最復(fù)雜最典型的B2B2C類京東的這套,主要的閱讀方向
1.看商城在主業(yè)務(wù)上的實現(xiàn)流程
2.儲存技術(shù)
3.緩存技術(shù)
4.前端技術(shù)
5.站內(nèi)搜索技術(shù)
6.模板引擎標簽語法
?
不過,我是第一次接觸shopnc,所以我要縷一縷代碼的執(zhí)行流程,順便標識一下目錄結(jié)構(gòu).
訪問index.php會自動判斷是否要安裝,安裝主要執(zhí)行3個步驟: ? 安裝數(shù)據(jù)庫文件->在根目錄生成config.ini.php的配置文件->往admin表中插入創(chuàng)始人管理員帳號密碼
所以可以直接將/install/images/config.ini.php下的配置文件復(fù)制到根目錄,再手動修改其中的配置項即可
而從安裝文件源碼可以看到,管理員密碼是沒有加鹽或其他二次加密處理的,這個比較危險,尤其管理員還是使用MD5加密,現(xiàn)在MD5岌岌可危,已經(jīng)不安全了。?所以使用shopnc第一件事應(yīng)該是把這里的md5加密改掉,刪除install目錄,將/global.php中判斷安裝的代碼注釋掉
?
?
出門便遇攔路虎,shopnc馬上遇到一個很奇怪的錯誤,php版本5.4n,mysql版本5.5
Fatal error: Call-time pass-by-reference has been removed in?D:\WWW\shopnc\framework\db\mysqli.php?on line?267
查看代碼,看來是引用傳值導(dǎo)致的鍋,php官方有詳細的文檔說明:http://php.net/manual/zh/language.references.pass.php ? ??
注意在函數(shù)調(diào)用時沒有引用符號!只有函數(shù)定義中有。光是函數(shù)定義就足夠使參數(shù)通過引用來正確傳遞了。
在最近版本的 PHP 中如果把 & 用在foo(&$a);?中會得到一條警告說“Call-time pass-by-reference”已經(jīng)過時了,但是不知道為什么在這里會變成語法格式錯誤。這個后面我會專門寫一篇文章來解釋他。
傳送門: ? ?PHP引用傳值規(guī)范問題
現(xiàn)在把$fields前面的 & 符號去掉,程序就正常運行了.
?
?文件執(zhí)行流程:
?文件目錄結(jié)構(gòu):
?
?
?本文到此結(jié)束,下篇文章我會繼續(xù)讀一讀shopnc在處理主業(yè)務(wù)上的實現(xiàn),包括會員,商品,訂單等。
?
轉(zhuǎn)載于:https://www.cnblogs.com/tingzhi/p/5809849.html
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的shopnc 商城源码阅读笔记--开篇概述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: joda jar日期处理类的学习
- 下一篇: 系统怎么放进大白菜u盘 如何将系统安装到