ThinkPHP`6.0`的環境要求如下:
>[info] * PHP >= 7.2.5
>[danger] `6.0`版本開始,必須通過`Composer`方式安裝和更新,所以你無法通過`Git`下載安裝。
## 安裝`Composer`
> 如果還沒有安裝 `Composer`,在 `Linux` 和 `Mac OS X` 中可以運行如下命令:
> ~~~
> curl -sS https://getcomposer.org/installer | php
> mv composer.phar /usr/local/bin/composer
> ~~~
> 在 Windows 中,你需要下載并運行?[Composer-Setup.exe](https://getcomposer.org/Composer-Setup.exe)。
> 如果遇到任何問題或者想更深入地學習 Composer,請參考Composer 文檔([英文文檔](https://getcomposer.org/doc/),[中文文檔](http://www.hmoore.net/thinkphp/composer))。
由于眾所周知的原因,國外的網站連接速度很慢。因此安裝的時間可能會比較長,我們建議使用國內鏡像。
>[info] 打開命令行窗口(windows用戶)或控制臺(Linux、Mac 用戶)并執行如下命令:
> ~~~
> 阿里云:
> composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
> 華為云:
> composer config -g repo.packagist composer https://repo.huaweicloud.com/repository/php/
> ~~~
## 安裝穩定版
如果你是第一次安裝的話,在命令行下面,切換到你的WEB根目錄下面并執行下面的命令:
~~~cmd
composer create-project topthink/think tp
~~~
這里的`tp`目錄名你可以任意更改,這個目錄就是我們后面會經常提到的應用根目錄。
如果你之前已經安裝過,那么切換到你的**應用根目錄**下面,然后執行下面的命令進行更新:
~~~cmd
composer update topthink/framework
~~~
>[danger] 更新操作會刪除`thinkphp`目錄重新下載安裝新版本,但不會影響`app`目錄,因此不要在核心框架目錄添加任何應用代碼和類庫。
>[info] 安裝和更新命令所在的目錄是不同的,更新必須在你的應用根目錄下面執行
如果出現錯誤提示,請根據提示操作或者參考[Composer中文文檔](http://www.hmoore.net/thinkphp/composer)。
## 安裝開發版
一般情況下,`composer` 安裝的是最新的穩定版本,不一定是最新版本,如果你需要安裝實時更新的版本(適合學習過程),可以安裝`6.0.x-dev`版本。
~~~cmd
composer create-project topthink/think=6.0.x-dev tp
~~~
## 開啟調試模式
應用默認是部署模式,在開發階段,可以修改環境變量`APP_DEBUG`開啟調試模式,上線部署后切換到部署模式。
本地開發的時候可以在應用根目錄下面定義`.env`文件。
> 通過`create-project`安裝后在根目錄會自帶一個`.example.env`文件(環境變量示例),你可以直接更名為`.env`文件并根據你的要求進行修改,該示例文件已經開啟調試模式
## 測試運行
現在只需要做最后一步來驗證是否正常運行。
進入命令行下面,執行下面指令
```
php think run
```
在瀏覽器中輸入地址:
~~~
http://localhost:8000/
~~~
會看到歡迎頁面。恭喜你,現在已經完成`ThinkPHP6.0`的安裝!
如果你本地80端口沒有被占用的話,也可以直接使用
```
php think run -p 80
```
然后就可以直接訪問:
~~~
http://localhost/
~~~
>[danger] 實際部署中,應該是綁定域名訪問到`public`目錄,確保其它目錄不在WEB目錄下面。
- 序言
- 基礎
- 安裝
- 開發規范
- 目錄結構
- 配置
- 架構
- 請求流程
- 架構總覽
- 入口文件
- 多應用模式
- URL訪問
- 容器和依賴注入
- 服務
- 門面
- 中間件
- 事件
- 路由
- 路由定義
- 變量規則
- 路由地址
- 路由參數
- 路由中間件
- 路由分組
- 資源路由
- 注解路由
- 路由綁定
- 域名路由
- MISS路由
- 跨域請求
- URL生成
- 控制器
- 控制器定義
- 基礎控制器
- 空控制器
- 資源控制器
- 控制器中間件
- 請求
- 請求對象
- 請求信息
- 輸入變量
- 請求類型
- HTTP頭信息
- 偽靜態
- 參數綁定
- 請求緩存
- 響應
- 響應輸出
- 響應參數
- 重定向
- 文件下載
- 數據庫
- 連接數據庫
- 分布式數據庫
- 查詢構造器
- 查詢數據
- 添加數據
- 更新數據
- 刪除數據
- 查詢表達式
- 鏈式操作
- where
- table
- alias
- field
- strict
- limit
- page
- order
- group
- having
- join
- union
- distinct
- lock
- cache
- cacheAlways
- comment
- fetchSql
- force
- partition
- failException
- sequence
- replace
- extra
- duplicate
- procedure
- 聚合查詢
- 分頁查詢
- 時間查詢
- 高級查詢
- 視圖查詢
- JSON字段
- 子查詢
- 原生查詢
- 獲取查詢參數
- 查詢事件
- 獲取器
- 事務操作
- 存儲過程
- 數據集
- 數據庫驅動
- 模型
- 定義
- 模型字段
- 新增
- 更新
- 刪除
- 查詢
- 查詢范圍
- JSON字段
- 獲取器
- 修改器
- 搜索器
- 數據集
- 自動時間戳
- 只讀字段
- 軟刪除
- 類型轉換
- 模型輸出
- 模型事件
- 模型關聯
- 一對一關聯
- 一對多關聯
- 遠程一對多
- 遠程一對一
- 多對多關聯
- 多態關聯
- 關聯預載入
- 關聯統計
- 關聯輸出
- 虛擬模型
- 視圖
- 模板變量
- 視圖過濾
- 模板渲染
- 模板引擎
- 視圖驅動
- 錯誤和日志
- 異常處理
- 日志處理
- 調試
- 調試模式
- Trace調試
- SQL調試
- 變量調試
- 遠程調試
- 驗證
- 驗證器
- 驗證規則
- 錯誤信息
- 驗證場景
- 路由驗證
- 內置規則
- 表單令牌
- 注解驗證
- 雜項
- 緩存
- Session
- Cookie
- 多語言
- 上傳
- 命令行
- 啟動內置服務器
- 查看版本
- 自動生成應用目錄
- 創建類庫文件
- 清除緩存文件
- 生成數據表字段緩存
- 生成路由映射緩存
- 輸出路由定義
- 自定義指令
- Debug輸出級別
- 擴展庫
- 數據庫遷移工具
- Workerman
- think助手工具庫
- 驗證碼
- Swoole
- 附錄
- 助手函數
- 升級指導
- 更新日志