陳耀成
摘 要 廣州市高級技工學校在2013年開始國家中等職業技術學校示范校建設,現已順利完成建設并通過驗收。其中,示范校建設專題網站是作為示范校建設的重要組成部分,是展示示范校建設成果的重要平臺。建設動態、成果展示和佐證材料等文件均需上傳到網站中。因此,建設一個簡單高效又穩定可靠的網站是尤為重要。本文對示范校專題網站建設進行需求分析,詳細設計功能模塊,并實現系統功能。網站使用Div+Css布局,采用ThinkPHP作為開發框架,以MVC模式進行開發。
關鍵詞 PHP;ThinkPHP;示范校專題網站;MVC模式
中圖分類號 TP3 文獻標識碼 A 文章編號 1674-6708(2018)202-0082-02
1 網站開發背景
為了提升中等職業院校的辦學水平、深化改革、加快發展,為行業和地區培養高技能人才,國家部委啟動國家中等職業技術學校示范校建設項目。根據要求,各建設單位需要建立一個專題網站,用于展示建設過程和建設成果。根據文件的要求及我校的建設需求,我們采用ThinkPHP作為框架進行開發,原因是:
1)ThinkPHP是比較成熟的框架,框架成熟穩定,可靠性高,不需要特別復雜配置過程,系統維護簡單容易。
2)比較傳統PHP開發方法,ThinkPHP框架是采用模塊化的架構設計,上傳、驗證碼、高速緩存、分頁和模型驗證等功能都比較齊全,開發效率高。
2 開發技術簡介
1)PHP:PHP是一種通用開源腳本語言,是文本預處理器(Hypertext Preprocessor)的縮寫。PHP語言吸收了C語言、Java和Perl的特點,主要應用于Web領域開發。PHP結合了C、Java、Perl的優點,內置Zend加速引擎,系統資源占用少,性能穩定快速,代碼執行速度快。與其他語言相比,PHP能更快速地執行。PHP具有很好的跨平臺行、開放性和可擴展性,有很多成熟的框架,有成熟的面向對象體系,有比較完整的支持,適應基本的面向對象要求,適合中大型項目開發。
2)ThinkPHP:ThinkPHP是一個基于PHP的開發框架,ThinkPHP遵循Apache2開源協議。ThinkPHP是從Struts結構移植過來并進行改進和完善的開發框架,采用面向對象的結構和MVC開發模式,可以在Windows/Linux/Unix等服務器下運行,支持MySql、Sqlite、PgSQL多種數據庫。ThinkPHP能輕松簡潔的實現數據庫對象關系映射,CURD(創建、修改、讀取、刪除)操作簡單方便,開發效率非常高。
ThinkPHP框架包含了底層架構、數據庫訪問層、基類庫、緩存機制、兼容處理、模板引擎、角色認證、插件機制以及表單處理等常用的開發組件,是一個完善的系統開發解決方案,可以解決系統應用開發中的大部分的需要。各組件都是功能完善、強大的,在不同平臺、不同版本,甚至不同的數據庫上移植都很方便。在應用開發過程中,開發人員只需要集中精力在系統的業務邏輯上,開發效率高。
3)MVC:MVC是當前流行的Web應用設計框架的實施標準,是軟件工程中的一種軟件架構模式。它把軟件系統分為3個基本部分:模型(Model)、視圖(View)和控制器(Controller),目的是實現一種動態和可持續的程序設計,簡化后期對程序的修改和擴展, 并且使程序中一部分的代碼或功能重復利用成為可能。
4)FlashPaper:FlashPaper是Adobe公司推出的電子文檔類轉換工具,通過虛擬打印機將文檔文件轉換為SWF文件,原文檔的字體格式和排版樣式不會發生改變,并可以非常方便地進行文檔縮小、放大、翻頁、選頁及打印操作。FlashPaper支持的格式包括有Word文檔、Excel電子表格、PPT演示文檔、TXT文本文件和JPG圖像文件等等。原來可編輯、可復制的原文檔通過轉換后,變為只能閱讀的SWF格式,在線用戶不能把原文檔的文字和圖片復制出來,在不影響文檔的傳播,保持較高的安全性,對原文檔起了很好的保護作用。
用戶只需上傳的各類資源文檔,文檔轉換成SWF文件后,插入到系統網頁中發布即可,各類瀏覽器都能支持,閱讀者無須下載文檔,無需安裝專門的閱讀軟件,只需打開網站頁面即可在線閱讀。
3 系統設計
1)需求分析:需求分析是軟件計劃階段的重要活動,根據示范校建設要求及我校實際情況,示范校專題網站欄目包括以下幾個:建設動態、組織機構、政策文件、重點專業、特色項目、教學資料、建設制度、典型案例、建設簡報和佐證材料。根據文檔安全性的要求,同時為提高閱讀效果,在建設簡報和佐證材料兩個功能模塊中,需要把文檔文件轉換為SWF格式文件,插入在系統頁面中,實現在線閱讀功能。建設動態、組織機構、政策文件、重點專業、特色項目、教學資料、建設制度、典型案例模塊需要提供文章上傳、閱讀、修改和刪除功能。網站系統用戶分為管理員和操作員兩類,管理員管理操作員,操作員管理文章。
2)功能設計:在需求分析的基礎上進行詳細分析,我們將系統分為用戶管理、文章管理、文章類型管理和SWF文件管理4個功能模塊。用戶管理模塊作用是管理使用用戶、設定角色、設置訪問系統的權限;文章類型管理模塊作用是添加、刪除、修改文章的類別;文章管理模塊作用是添加、刪除、修改文章。
依據面向對象思想及系統功能模塊的劃分,我們將功能模塊抽象模擬為4個對象類:用戶類、文章類、類型類和SWF文件類。分析各個系統功能,賦予各對象類的方法和屬性。在本系統中,對象類的屬性不盡相同,而方法則基本為讀取、添加、刪除、修改。通過使用執行和調用各對象的屬性和方法,從而完成系統的各項功能。
3)數據庫設計:在數據庫設計階段,我們根據功能設計中對象類建立用戶表、文章表、文章類型表和SWF文件表,各數據表的字段值根據對象類的屬性進行設置,并設置相應的類型和長度。本系統采用MySql作為數據庫,ThinkPHP提供數據庫讀寫的數據訪問層,業務邏輯層不用直接訪問數據庫資源層,提高開發的效率。
4)功能實現:網站使用Div+CSS建設系統頁面,后臺系統采用ThinkPHP框架及MVC模式開發,將模型、視圖、控制器數分離開來,系統結構清晰直觀。開發過程中簡化了數據操作的處理過程,提高開發的速度,減少開發成本,同時也降低后期系統的修改維護管理的難度。在MVC模式下,先使用M函數實例化模型類,構建寫入的數據數組,使用Add、Delete、Save和Where函數實現數據的添加、刪除、修改和查詢。在Lib/Model/目錄下定義好與數據表對應的模型類UserModel. class.php、FileModel.class.php、KindsModel. class.php、SwfModel.class.php。同時在也在Lib/Action/目錄下添加了應用模塊和寫下了系統的控制操作,并且在Tpl文件夾下建立了與之對應的模板文件,實現系統的功能。
對于文件的轉換操作,系統需先安裝好FlashPaper,設置相應的文件目錄。操作員上傳了文檔文件后,系統執行SWF類的轉換方法,調用FlashPaper的轉換功能,對上傳的文檔進行虛擬打印,將文檔轉換為SWF格式。轉換后的文件以時間加隨機數字進行重命名。在頁面中,把SWF文檔嵌入網頁展示出來,實現在線閱讀功能。
4 結論
現在技工院校發展也是國家發展的重點,通過示范校建設,學校發展上了一個臺階,示范校建設專題網站設計也緊跟主流開發技術的步伐,網站使用Div+CSS建設網站頁面,使用PHP+MySQL的建設系統后臺,以ThinkPHP作為框架開發,合理分析需求,合理設計功能,提高開發效率,也提高系統的安全性和穩定性。在系統實現中,使用FlashPaper組件對于文檔進行轉換,實現了在線閱讀功能。基本滿足示范校專題網站的建設需求,達到的預期的目的。
參考文獻
[1]李晶.PHP技術應用于中小網站開發探討[J].電腦知識與技術,2014(17):4028-4029.
[2]鐘偉,唐發根.通用應用系統性能評測環境的設計與實現[J].計算應用,2014(2):141-144.
[3]李楊.基于PHP技術的CMS在網站開發中的應用[J].信息通信技術,2013(9):105-107.
[4]藍智靈,宋宇波,唐磊.基于直接內核對象操作的進程偽裝保護方法[J].東南大學學報(自然科學版),2013(1):24-29.