> ### 簡單介紹
- 做項目的時候, 你可以能會遇到這樣的問題: 項目在本地上可以正常運行, 放到測試服上就會出現各種bug, 測試服的問題修復了, 放到正式服又是一堆bug.
- 有的是window和linux大小寫問題, 有的是php版本不一樣(本地開發的是php5.6.37, 測試的是php5.6.32 小版本的不同, 導致一個正常, 一個出現bug).而且有些php擴展只提供了linux平臺的. 這些大部分是環境不同造成的, 而Docker可以很好的解決這些問題.
- Docker是一個開源項目,這個項目旨在通過把應用程序打包為可移植的,自給自足的容器.本身自帶操作系統, 可以在 Windows, Centos, Ubuntu ... 等環境上進行部署
- 簡單的說Docker就像一個集裝箱, 將php開發環境裝到集裝箱里. 將這個集裝箱放到貨車上, 它可以正常運行, 放到輪船上, 它也可以正常運行.
> ### Dockerfile搭建php開發環境
- 自己用Dockerfile創建的鏡像會非常大, 可以用官方提供的(用不習慣, 自己用Dockerfile編譯安裝. 目前用在本地開發環境和測試開發環境, 正式的還是原生編譯安裝)
> ### 團隊的使用
- 組長將鏡像上傳到鏡像中心, 組員通過docker pull從鏡像中心下載鏡像到本地. 等鏡像下載完, docker run運行容器, php開發環境就搭建好了
- 當需要安裝新擴展和修改配置時, 組長將修改后的容器生成新的鏡像, 將新的鏡像提交到鏡像中心. 組員通過docker pull拉取修改部分的鏡像

- 第一序 PHP開發環境
- 1.1 Windows開發環境
- A計劃(下載php繼承環境-phpStudy)
- B計劃(phpStudy壓縮包)
- 1.2 Linux開發環境
- A計劃(yum安裝PHP開發環境)
- B計劃(編譯安裝PHP開發環境)
- Centos7編譯安裝Nginx
- Centos7編譯安裝PHP
- Centos7編譯安裝MySQL
- C計劃(Docker拉取PHP開發環境鏡像)
- 使用介紹
- 拉取鏡像
- 第二序 相關閱讀
- 2.1 相關閱讀1
- 2.3 相關閱讀3
- 第三序 留言板項目
- 3.1 靜態模板
- 3.2 原生PHP實現
- 3.3 ThinkPHP5實現
- 3.4 其他開發者的代碼
- 第四序 調試工具
- 4.1 打印工具
- 4.2 跟蹤調試代碼 XDebug
- 4.3 接口調試工具 SocketLog
- 第五序 驗證碼
- 5.1 驗證碼1
- 5.2 驗證碼2
- 5.3 驗證碼3-1
- 5.4 驗證碼3-2
- 第六序 加密和解密
- 6.1 舊的加密方式
- 6.2 新的加密方式
- 第七序 原生MySQL工具類
- 7.1 mysql.lib.php(MySQL擴展)
- 7.2 mysqli.lib.php(MySQLI擴展)
- 7.3 pdo.lib.php(PDO擴展)
- 7.4 使用案例
- 第八序 分頁功能
- 8.1 ThinkPHP自定義分頁模板
- 8.2 組裝分頁
- 8.3 彈框分頁處理
- 8.4 原生分頁
- 第九序 算法
- 9.1 查找
- 9.1.1 二分查找
- 9.2 排序
- 9.2.1 交換排序-冒泡排序
- 9.2.2 插入排序 - 直接插入排序
- 9.2.3 插入排序 - 希爾排序
- 9.2.4 交換排序 - 快速排序
- 9.3 算法求解應用
- 第十序 模板集群(多項目用到的模塊)
- 10.1 ThinkPHP5.1新特性: 容器
- 10.2 加載規范測試例子
- 10.3 開始使用
- 10.3.1 項目托管
- 10.3.2 容器ZContainer
- 10.3.3 服務示例(Tools_Excel)
- 10.3.4 其它項目使用服務
- 第十一序 Excel表格導入和導出
- 11.1 PHPExcel導入導出
- 11.2 導入代碼
- 11.3 導出代碼
- 11.4Tools_Excel
- 第十二序 地圖
- 12.1 百度地圖
- 12.2 谷歌地圖
- 第十三序 模板
- 13.1 ThinkPHP5模板
- 13.2 Smarty模板
- 13.3 Yii2
- 第十四序 圖片上傳
- 14.1 Uploadify
- 14.2 AjaxFileUpload.js
- 14.3 WebUploader
- 第十五序 支付功能
- 15.1 PayPal
- 技術擴展閱讀