當(dāng)前位置:首頁 >  站長 >  建站經(jīng)驗 >  正文

用戶管理系統(tǒng) PHP項目開發(fā)銀彈?

 2022-03-17 13:53  來源: 網(wǎng)絡(luò)綜合   我來投稿 撤稿糾錯

  阿里云優(yōu)惠券 先領(lǐng)券再下單

銀彈,是針對狼人等超自然怪物的特效武器。后來也被比喻為具有極端有效性的解決方法,作為殺手锏、最強殺招、王牌等的代稱。

作為一個在php開發(fā)崗位上小有幾年經(jīng)驗的開發(fā)者,我的日常工作是從事基于TP框架的php項目開發(fā)。一直以來,我都執(zhí)著于獨立自主開發(fā),包括最基本的用戶管理和后臺管理系統(tǒng)。最困擾我的東西就是權(quán)限管理、用戶的登陸注冊等等。每個項目的需求不一樣,所以我采用的方式就是修修改改,維護(hù)自己的用戶管理系統(tǒng)。然后應(yīng)用到各種項目中。

直到有一天,我在OSC上看到一個新的開源項目——OpenCenterphp用戶管理系統(tǒng)。讓我突然產(chǎn)生一種相見恨晚的感覺。

我為什么會有這種感覺呢?

首先,OC是遵循Apache2.0開源協(xié)議的,也就是和TP一樣的協(xié)議。打消了我在版權(quán)方面的疑慮。

再者,它作為一款用戶管理系統(tǒng),提供了較為完善的用戶注冊流程,包括多種注冊方式,如手機(jī)號注冊、郵箱注冊、用戶名注冊,同時還支持真實性驗證,可見開發(fā)團(tuán)隊的誠意。

另外,它對用戶權(quán)限管理方面所做的努力,也可見一斑,開發(fā)團(tuán)隊稱繼承自O(shè)neThink,我也曾經(jīng)在項目中使用OneThink,發(fā)現(xiàn)OC還是有很大不同之處的,它還加入了前臺權(quán)限的管理。

為了給廣大tper一個參考,我特別拿OneThink和OC進(jìn)行了一個比較。

1.開源協(xié)議

兩者都是基于Apache2.0的,沒什么好比較的。

2.系統(tǒng)框架

兩者都是基于ThinkPHP的。不過OC基于OneThink,這一點讓我很疑惑。因為從表面上,很難看出來兩個系統(tǒng)的是同一個內(nèi)核。不過研究之后,還是發(fā)現(xiàn)一些共同之處。OC有很濃重的OneThink基因。

前端方面,OC采用zui,算是一個比較大膽的嘗試(據(jù)我所知,zui就是bootstrap的一個改進(jìn)版本,學(xué)習(xí)成本比較低),OneThink比較傳統(tǒng),采用了bootstrap。

3.系統(tǒng)重點

OneThink著重于內(nèi)容管理,從后臺的結(jié)構(gòu)也可以看出來。導(dǎo)航欄中可以很醒目地看到內(nèi)容管理的部分,內(nèi)容管理部分的功能也已經(jīng)初具雛形。

OC著重于用戶管理,所以后臺導(dǎo)航完全沒有內(nèi)容管理的部分,比較有特色的是,導(dǎo)航部分把“模塊”概念突出了,左側(cè)欄位專門放置模塊,同時也支持模塊的安裝卸載,這一點應(yīng)該說是比較大的改進(jìn)吧。

&OC還有一個比較突出的特性,就是支持用Php構(gòu)建后臺管理頁面,這對像我這樣的,沒有太多前端經(jīng)驗的后端開發(fā)人員來說,是最大的吸引力。通過AdminBuilder類庫,可以純php來構(gòu)建管理頁面。還有更牛的開發(fā)者自己改進(jìn)了一套用于前臺的AdminBuilder。

圖一、OC后臺局部截圖

4.前臺功能

這方面,兩者均只提供了一個基礎(chǔ)的demo,OneThink提供了一個博客形式的demo。而OC更加徹底,只提供了一個演示模塊和一個演示首頁。不過OC的默認(rèn)風(fēng)格更加小清新,可能和采用zui框架作為前端有一定關(guān)系吧。

OneThink注冊登錄方面,并沒有提供完整的流程。在這方面,OC做得可圈可點。多種形式的注冊登錄、第三方登陸、同時還支持頭像的裁剪、擴(kuò)展字段,密碼修改等功能。值得一提的是,OC還提供了一種消息機(jī)制,研究之后,發(fā)現(xiàn)是基于輪詢技術(shù)實現(xiàn)的,這里,我覺得還有可改進(jìn)的空間。不過基本都能滿足我的需求。

圖二、資料修改界面

圖三、消息提醒菜單

5.擴(kuò)展

說到擴(kuò)展,我覺得OneThink還是做得比較贊的,OneThink有比較多的開發(fā)者貢獻(xiàn)插件,算是一個比較大的競爭優(yōu)勢。而OC,因為剛出來,沒有這方面的支持,不過我試著把OneThink的插件移植到OC上,發(fā)現(xiàn)還是比較好兼容的,畢竟父子關(guān)系擺在那里。

不過OC的官方也是比較努力的,提供了一些內(nèi)置插件,比如圖片水印,空間換膚等。值得一提的是,開發(fā)團(tuán)隊改進(jìn)了一些OneThink的第三方插件之后仍然保留作者,比起某些所謂的“具有分享精神”的人高尚一點。

6.文檔

文檔這塊,我個人感覺OC還不具備和OneThink比較的能力。首先,OC的文檔不夠齊全,這一點也算是OC的痛處吧。雖然開發(fā)團(tuán)隊提供了一個離線文檔,但還是很不詳細(xì)。比起OneThink還差很多。不過群里面每天都有更新進(jìn)度,也算是不錯的了。

7.開發(fā)者

其實這一項進(jìn)行比較,對OC挺不公平的,畢竟一個年前才推出第一個版本,而OneThink已經(jīng)發(fā)布有個把年頭了。不過個人覺得,OC作為一款用戶管理系統(tǒng),還是大有可為的,畢竟不是每個開發(fā)人員都喜歡自己去開發(fā)維護(hù)一套用戶管理系統(tǒng)的,有一個現(xiàn)成可以用的項目會方便很多。

8.總結(jié)

通過對兩個開源項目的比較,不知道大家是不是了然了。從我個人的角度來說,不管黑貓白貓,能抓住老鼠就是好貓,看需求!

我個人的選擇建議:

1.如果你是做CMS類的項目,那么首選OneThink,這個毫無疑問,畢竟OC,還沒有這方面的模塊擴(kuò)展,而從OneThink中再整合這個部分,可謂難度不小。

2.如果你是做一些需要用戶系統(tǒng),并且用戶交互比較多的新項目,那么選OC吧,OC的存在,無疑會讓你如虎添翼,節(jié)省下大量的開發(fā)時間。

期待

通過兩個開源項目的比較,很顯然,OC目前尚達(dá)不到銀彈的程度,但最近我發(fā)現(xiàn)OC在開源中國OSC@GitPHP類目排名是第一名,無疑也是給了開發(fā)者一個不錯的選擇。

留在本文最后,容我發(fā)表一下自己對OC未來發(fā)展的期望。模塊化的系統(tǒng)構(gòu)建理念不錯,如果OC的開發(fā)團(tuán)隊能夠重視開發(fā)者,給開發(fā)者提供更多的支持,相信會有越來越多的php開發(fā)者采用OC,同時也希望用過OC的開發(fā)者能夠積極分享功能擴(kuò)展,這樣OC才能夠越走越遠(yuǎn)。

申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)標(biāo)簽
php教程

相關(guān)文章

  • PHP8的數(shù)據(jù)類型轉(zhuǎn)換-PHP8知識詳解

    什么是數(shù)據(jù)類型轉(zhuǎn)換?答:數(shù)據(jù)從一個類型轉(zhuǎn)換成另外一個類型,就是數(shù)據(jù)類型轉(zhuǎn)換。在PHP8中,變量的類型就是由賦值決定的,也就是說,如果string賦值給$var,然后$var的類型就是string。之后將int值賦值給$var,它將是int類型。列如:在上面的代碼中的“=”不是數(shù)學(xué)里面的“等于”,它是

    標(biāo)簽:
    php教程
  • 在PHP8中檢測數(shù)據(jù)類型-PHP8知識詳解

    在PHP8中,可以使用多種方法來檢測數(shù)據(jù)類型。以下是常用的四種方法:使用gettype()函數(shù)、使用is_*系列函數(shù)、使用get_debug_type()函數(shù)、使用get_class()函數(shù)。一、使用gettype()函數(shù)gettype()函數(shù)返回給定變量的數(shù)據(jù)類型。例如:二、使用is_*系列函數(shù)P

    標(biāo)簽:
    php教程
  • PHP語言優(yōu)勢-PHP8知識詳解

    PHP起源于自由軟件,并且得到了不斷的迭代更新,在web開發(fā)領(lǐng)域獨領(lǐng)風(fēng)騷,得到了廣大使用者的喜愛,PHP作為一款優(yōu)秀的腳本語言,具有以下優(yōu)勢:1、源碼開源:所有的PHP源代碼,你都能從PHP官方網(wǎng)站下載到,可以快速修改和利用。2、完全免費:你可以從PHP官方網(wǎng)站下載源碼完全免費,無需支付任何費用,直

    標(biāo)簽:
    php教程
  • PHP8的新特性-PHP8知識詳解

    PHP8是PHP編程語言的一個主要版本,在2020年11月26日發(fā)布。它引入了許多新特性和改進(jìn),包括以下一些主要特性:1.JIT編譯器:PHP8引入了名為TracingJIT的即時(Just-In-Time)編譯器。JIT可以將PHP腳本中頻繁執(zhí)行的部分編譯成原生機(jī)器碼,提高執(zhí)行速度。2.類型系統(tǒng)改

    標(biāo)簽:
    php教程
  • PHP是什么-PHP8知識詳解

    PHP是什么?PHP服務(wù)網(wǎng)從下面幾點為你講清楚什么是PHP。1、PHP最開始是PersonalHomePage(個人主頁)的縮寫,已經(jīng)正式更名為“PHP:HypertextPreprocessor”,超文本預(yù)處理器的字母縮寫。2、PHP是一種被廣泛應(yīng)用的、跨平臺、開放源代碼的多用途服務(wù)器端腳本語言,

    標(biāo)簽:
    php教程

熱門排行

信息推薦