PHP軟件工程師
培養(yǎng)目標:
精通全套php技術,掌握分析、設計、開發(fā)大型軟件系統的原理、方法、技術和過程,積累至少1-2年的軟件開發(fā)經驗。TTS7.0將自學與自檢緊密結合,做到每一個知識點都有課程短視頻、課程PPT、超級技術文檔、知識點測試,讓學員在復習時充分吸收技術知識。
PHP軟件工程師課程大綱
(共52天 416課時)
一期:Web技術基礎 --9天課程
二期:PHP高級程序員—21天課程
三期: LAMP架構師—22天課程
預科課程
|
課程日期 |
科 目 |
內 容 |
程序實例及學習效果 |
|
2周(4天) |
網頁制作工具 網頁相關知識 辦公軟件 |
4.PS網站效果圖設計技巧 5.PS切片原理及方法 6.Dreamweaver可視化網站設計 |
基本操作 簡單設計 |
一、基礎課程:Web技術基礎(72課時)(9天)
|
課程目標 |
(1)、HTML主體標簽 (2)、表單標簽(包括file文件域和隱藏域) (3)、表格標簽(包括跨列colspan、跨行rowspan) (4)、其他標簽 <a href=”” target=””> <img src=””> <p></p> <h1></h1>…<h6></h6> <br> 實體 和搜索相關標簽<meta>
|
||
|
課程日期 |
科 目 |
內 容 |
程序實例及學習效果 |
|
第1天 |
HTML |
|
例1:我的第一個HTML頁面 例2:HTML頁面文字排版 例3:在HTML頁面中插入圖片和超鏈接 |
|
第2天 |
|
例4:HTML頁面中輸出表格 例5:后臺框架頁面制作 例6:HTML表單應用 |
|
|
第3天 |
HTML制作靜態(tài)網頁(表格布局) |
例:新星科技首頁切圖及布局 |
|
|
第4天 |
Css+DIV |
|
例:使用CSS+DIV對新星科技首頁進行布局 |
|
第5天 |
|
||
|
第6天 |
DIV+CSS+切割頁面 |
PSD圖切割,DIV布局頁面 |
例:新聞CMS切片并進行DIV布局 |
|
第7天 第8天 第9天 |
JavaScript FireBug工具 |
|
例1:注冊表單驗證(reg_check.html) 例2:全選-反選-不全選(checkbox.html) 例3:時鐘制作(clock.html) 例4:JS幻燈片(banner.html) 例5:樹形菜單(menu_tree.html) 例6:Dom表格操作(table.html) |
|
|||
二、PHP5實用課程:PHP高級程序員(168課時)(21天)
|
課程目標 |
備注: 充分利用PHP手冊
本階段使用工具Dreamweaver或 zend studio for eclipse,建議大家逐步熟悉專業(yè)的PHP開發(fā)工具Zend Studio for Eclipse
項目覆蓋一個完整的前后臺網站,數據庫操作可使用PHPMyAdmin工具 |
||
|
課程日期 |
科 目 |
內 容 |
程序實例及學習效果 |
|
第10天 |
php5環(huán)境搭建 PHP5基礎語法 分支結構 |
1.PHP介紹。 2.PHP開發(fā)環(huán)境的搭建。 3.PHP開發(fā)工具zend studio的介紹及使用 4.PHP語言的標記、語法結構、注釋、變量、常量、數據類型、運算符和表達式。 5. 分支結構 (1)單分支結構(if) (2)雙分支結構(else子句) (3)多分支結構(elseif子句) (4)多向選擇分支結構(switch語句) (5)嵌套條件分支結構 |
例1:AppServ集成環(huán)境安裝 例2:使用if語句來對用戶登錄進行判斷 例3:使用switch case語句來判斷是成績等級 |
|
第11天 |
循環(huán)結構 |
6.循環(huán)結構 (1)While循環(huán) (2)do…while循環(huán) (3)for循環(huán) (4)break、continue和exit關鍵字 |
例4:循環(huán)的應用 |
|
第12天 第13天 第14天 |
PHP數組與數組函數庫 超全局數組 自定義函數 數學函數庫 |
(1)學習使用post獲取表單數據
(1)使用get連接傳遞參數
(1)Server獲取常用數據
|
例1:一維索引數組和一維關聯數組的訪問 例2:二維索引和二維關聯數組的遍歷 例3:POST及GET表單數據的接收及處理 例4:網頁傳參應用實例 |
|
第15天 第16天 |
會話控制 日期與時間函數 文件的包含 錯誤處理機制 字符串處理 |
(1)什么是COOKIE (2)COOKIE的工作原理 (3)設置COOKIE (4)接收和處理COOKIE (5)創(chuàng)建COOKIE數組 (6)刪除COOKIE
(1)什么是SESSION (2)SESSION和COOKIE的區(qū)別 (3)啟動session會話 (4)注冊session變量 (5)使用session變量 (6)Session_id()和session_name() (7)注銷session變量
(1)UNIX時間戳 (2)獲取指定時間戳日期 (3)格式化本地日期 (4)修改默認時區(qū) (5)統計腳本執(zhí)行時間
(1)Include()和include_once() (2)Require()和require_once()
(1)錯誤類型 (2)錯誤相關配置 (3)錯誤日志 (4)異常處理
(1)常用字符串輸出函數 (2)常用字符串格式化函數 (3)常用字符串比較函數 |
例1:COOKIE計數器 例2:使用SESSION記錄客戶端信息 例3:購物車功能實現 |
|
第17天 第18天 |
$_FILES數組 File system 函數 文件管理系統 |
(1)文件類型和屬性相關函數
(1)解析目錄路徑 (2)遍歷目錄 (3)統計目錄大小 (4)建立和刪除目錄 (5)復制或移動目錄
(1)文件的打開 (2)文件的寫入 (3)文件內容的讀取 (4)訪問遠程文件 (5)移動文件指針 (6)文件的鎖定機制 (7)文件的一些基本操作函數 (8)文件的關閉
(1)文件上傳基本知識 (2)文件上傳參數配置 (3)文件上傳錯誤類型 (4)文件的MIME類型
|
例1:遍歷目錄函數 例2:統計目錄大小函數 例3:復制目錄函數 例4:移動目錄函數 例5:刪除目錄函數 例6:文件上傳函數 例7:文件的讀和寫操作 例8:文件上傳(分單文件和多文件) 例9:文件的下載 |
|
文件管理系統實戰(zhàn) |
項目:文件管理系統 |
||
|
第19天 第20天 |
正則表達式 mail() 函數 GD2圖形函數庫 |
1.正則表達式 (1)正則表達式的介紹 (2)PCRE正則表達式的語法規(guī)則 (3)與Perl兼容的正則表達式函數 2.使用mail()函數實現郵件的發(fā)送功能 3.GD2圖形函數庫 (1)GD庫的開啟和配置 (2)GD庫函數庫 (3)GD庫繪制驗證碼 (4)GD庫繪制縮略圖 (5)GD庫添加文字水印 (6)GD庫添加圖片水印 |
例1:驗證碼的繪制 例2:生成圖形縮略圖 例3:添加文件水印 例4:添加圖片水印 例5:裁剪圖像 |
|
第21天 第22天 |
面向對象 |
1.什么是面向對象 (1)面向對象的概念 (2)什么是類,什么是對象,類和對象之間的關系 2.如何實現面向對象編程 (1)如何抽象出一個類? (2)如何實例化對象? (3)如何訪問對象中的成員屬性和方法? (4)特殊的對象引用“$this”的使用 (5)構造方法與析構方法 3.面向對象三大特性之一:封裝性 (1)設置私有成員屬性和方法 (2)Public、protected、private三者的區(qū)別的權限 (3)__set()、 __get()、 __isset()、 __unset() 4.面向對象三大特性之二:繼承性 (1)類的繼承格式 (2)訪問類型控制 (3)子類重載父類的方法 5.面向對象三大特性之三:多態(tài)性 (1)抽象方法與抽象類 (2)接口技術 (3)抽象類與接口的區(qū)別 (4)多態(tài)性的應用 6.魔術方法 (1)__toString()、__call()、__autoload()、對象的串行化__sleep()和__wakeup()方法 7.常見的關鍵字 (1)final關鍵字的應用 (2)static和const關鍵字的應用 |
例1:自定義工人類并對其進行實例化 例2:類內及類外成員屬性或方法的訪問 例3:類的封裝 例4:類的繼承 例5:類的多態(tài) 例6:關鍵字及魔術方法的應用 |
|
第23天 |
常用公共類編碼 |
1.驗證碼類 2.文件上傳類 3.分頁類 |
例1:驗證碼類的編寫及應用 例2:文件上傳類的編寫及應用 例3:分頁類的編寫及應用 |
|
第24天 |
MYSQL數據庫 PHP與MYSQL |
update語句修改數據、delete語句刪除數據 多表查詢、子查詢、統計查詢、分組查詢、排序查詢、查詢指定條數 9、主外鍵、數據庫的備份與恢復 10、數據庫設計步驟 11.使用PHP腳本連接數據庫 12.使用PHP腳本選擇數據庫并執(zhí)行sql語句 13.使用PHP腳本處理查詢結果集 14.錯誤處理函數 15.使用PHP腳本關閉數據庫連接 16.索引和搜索 17.mysql事務處理(注意表類型) 18.mysql數據表的鎖定機制及應用 |
例:數據庫操作類的編寫 |
|
第25天 |
PHP中MYSQL函數庫應用 |
|
例:學生信息管理系統的制作 |
|
第26天 |
CKEditor編輯器 MYSQLI擴展庫 |
1.CKEditor的使用及配置 2.Mysqli類 (1)Mysqli類的屬性和方法 (2)創(chuàng)建mysqli類對象 (3)連接數據庫 (4)多條sql語句的執(zhí)行 (5)關閉mysqli數據庫連接 3.Mysqli_result類 (1)創(chuàng)建結果集對象 (2)從結果集中解析數據 (3)從結果集中獲取數據列的信息 (4)釋放結果集 4.Mysqli_stmt類 (1)Mysqli_stmt類的屬性和方法 (2)準備預定義sql語句 (3)創(chuàng)建mysqli_stmt類對象 (4)參數的綁定 (5)執(zhí)行預準備sql語句 (6)綁定執(zhí)行結果 (7)回收資源 |
例1:CKEditor應用實例 例2:使用Mysqli編寫數據庫操作類 |
|
第27-30天 |
實訓項目 |
網上書城前臺: 登錄模塊 注冊模塊 首頁圖書瀏覽 圖書列表 圖書詳情 購物車 訂單處理 網上書城后臺: 會員管理 類別管理 圖書管理 訂單管理 前臺信息管理 |
項目實戰(zhàn) 注:重難點模板老師帶著學生去做,其他類似模塊由學生練習完成 |
三、PHP5高級課程:LAMP架構師 (176課時)(22天)
|
課程目標 |
|
||
|
課程日期 |
科 目 |
內 容 |
程序實例及學習效果 |
|
第31天 |
PHP5模板引擎技術 |
1.Smarty模板引擎的介紹 2.Smarty模板的安裝 3.Smarty模板的基本語法 4.Smarty模板的變量、變量調節(jié)器、組合調節(jié)器 |
例1:Smarty模板的安裝及簡單應用 例2:學生信息管理系統添加模塊的實現 |
|
第32天 |
PHP5模板引擎技術 |
1.Smarty模板的內建函數 2.Smarty模板自定義函數 3.Smarty模板的配置文件 |
例3:使用foreach、section內建函數循環(huán)輸出關聯數組和索引數組 例4:使用foreach來實現學生管理系統項目學生信息瀏覽模塊 例5:自定義函數及應用 例6:讀取配置文件 |
|
第33天 |
PHP5模板引擎技術 |
1.Smarty模板的單頁緩存 2.Smarty模板的局部緩存 3.Smarty模板的每個頁面多個緩存 4.Smarty模板清除緩存 5.Smarty模板局部緩存的關閉 |
例7:使用Smarty模板實現單頁緩存 例8:使用Smarty模板實現局部緩存 例9:使用Smarty模板實現一個頁面多個緩存 |
|
第34天 第35天 |
MVC設計模式 MVC和Smarty應用 |
1.MVC設計模式的優(yōu)點 2.MVC設計模式的缺點 3.MVC設計模式三層架構詳解 4.MVC設計模式的應用 5.學生管理系統開發(fā) |
例:使用Smarty模板和MVC設計思想制作學生信息管理系統(純底層開發(fā)) 注:重點在MVC框架的搭建及應用 |
|
第36天 |
Ajax技術 jQuery框架 |
1.Ajax技術 (1)Ajax概述及運行原理 (2)Ajax瀏覽器支持 (3)Ajax的核心是JavaScript對象XmlHttpRequest (4)Ajax無刷新技術 2.jQuery框架 (1)jQuery簡介 (2)jQuery語法 (3)jQuery選擇器 |
例1:原生Ajax數據庫交互 例2:注冊驗證 |
|
第37天 第38天 |
jQuery框架 XML |
(4)jQuery事件 (5)jQuery特效 (6)jQuery回調函數 (7)jQuery HTML (8)jQuery CSS (9)jQuery Ajax(重點) (10)jQuery應用 3.XML語言 (1)什么是XML? (2)XML與HTML的差異 (3)XML的特點 (4)PHP中常用的生成XML和解析XML的兩種方法 (5)使用PHP程序生成XML文件 (6)使用PHP程序解析XML文件 |
例3:滑動菜單 例4:二級、三級聯動菜單 例5:可編輯表格 例6:生成XML文件 例7:解析XML文件 |
|
第39天 第40天 |
Memcache |
1. Memcached的工作原理 2. 在Web開發(fā)中使用Memcached 3. 安裝和應用Memcache服務器 4. Memcache服務器的管理 5. 操作和遍歷Memcache內容 6. 在PHP中使用Memcached 7. Memcached安全設置 |
|
|
第41天 |
ThinkPHP框架 |
|
例1:使用ThinkPHP搭建項目前臺 例2:我的第一個ThinkPHP小項目 例3:CMS內容管理系統項目搭建 |
|
第42天 |
ThinkPHP框架 |
|
例4:CMS內容管理系統后臺登錄模塊 例5:CMS內容管理系統前臺首頁展示模塊 |
|
第43天 |
ThinkPHP框架 |
|
例6:CMS內容管理系統新聞管理模塊 例7:TP中使用Smarty模板引擎 注:13、14點的內容可結合ThinkPHP自帶的常用功能案例(Examples目錄)去講解。 |
|
第44天 |
SVN版本控制器 |
1.SVN版本控制器 (1)版本控制概述 (2)Subversion服務器的建立與使用 (3)服務器和客戶端安裝 (4)建立版本庫(Repository) (5)配置用戶和權限 (6)運行服務器 (7)初始化導入 (8)基本客戶端操作 |
例1:SVN版控制器的安裝和配置 |
|
第45-50天 |
項目開發(fā)流程 實訓項目 |
1.項目開發(fā)流程 (1)項目調研 (2)項目需求分析 (3)項目預算、開發(fā)周期確定 (4)項目文檔撰寫 ①項目需求設計說明書 ②數據庫設計說明書 ③程序設計說明書 (5)前臺設計與布局 (6)項目編碼 (7)項目測試 (8)項目審核 (9)項目發(fā)布 2.項目開發(fā)規(guī)范 (1)文件格式 (2)注釋規(guī)范 (3)空行和空白規(guī)范 (4)命名規(guī)范 (5)數據庫設計規(guī)范 (6)模板設計規(guī)范 3.CMS內容管理系統開發(fā) 項目前臺模塊:
項目后臺模塊:
|
例1:CMS內容管理系統項目文檔的撰寫 例2:CMS內容管理系統開發(fā) 注:本項目已被拆分到ThinkPHP部分知識講解的各課時中,重點模塊由教師演示操作完成,功能類似、實現方法一至的可由學生獨立完成。 |
|
第51天 |
PHP5開源產品 Linux系統 |
1.PHP5開源產品 (1)PHPCMS、DEDECMS內容管理系統的安裝、配置及應用 (2)ShopEX、ECshop、ECmall網上商城系統的安裝、配置及應用 (3)discuz!、phpwind論壇的安裝、配置及使用 2、Linux
|
例1:PHPCMS、DEDECMS內容管理系統的安裝及簡單應用 例2:網上商城系統的安裝及簡單應用 例3:論壇系統的安裝及簡單應用 例4:LAMP環(huán)境架設 注:本部分內容主要讓學生掌握如何在Linux環(huán)境下搭建PHP開發(fā)環(huán)境以及如何進行PHP開發(fā)和運行PHP文件即可。 |
|
第52天 |
ESD |
ESD |
ESD |