之前用過 Laravel,框架自帶的 artisan 命令,用得爽到爆。現在工作需要,要學習 FuelPHP,首先看到框架目錄結構,有 coposer.json 框架可以用 composer 管理,一定也有自己的命令工具。 對於新手來說,不妨先用命令自動生成文件,然後看這些生成的文件瞭解基本的 CR ...
之前用過 Laravel,框架自帶的 artisan 命令,用得爽到爆。現在工作需要,要學習 FuelPHP,首先看到框架目錄結構,有 coposer.json 框架可以用 composer 管理,一定也有自己的命令工具。
對於新手來說,不妨先用命令自動生成文件,然後看這些生成的文件瞭解基本的 CRUD 操作。
一、準備工作
1、要用 oil 命令需要先安裝 composer
看官網自行安裝 https://getcomposer.org/download/
2、正確連接並創建資料庫
/fuel/app/config/development/db.php 裡面進行資料庫配置
下麵是 /fuel/app/ 目錄結構
3、打開命令編輯工具,並切換到框架根目錄。
二、即使本地沒有伺服器,也可以訪問網站的高級命令 server
php oil server
現在訪問 http://localhost:8000 就可以了,但這個狀態需要一直保持(另外打開一個視窗執行下麵的其他命令)。Ctrl-C 可退出。
三、創建 MVC 及其他所需文件的最常用命令 generate
先看看可以創建哪些文件,g 是 generate 的縮寫。
php oil g help
1、scaffold 腳手架,顧名思義,一條命令可以創建一系列 MVC。簡單的 CRUD 操作,只需要一條命令,不需要自己寫任何代碼。
例:創建 article 的 MVC 系列文件,title、content、author、reading 四個欄位。
php oil g scaffold article title:varchar content:text author:varchar reading:int
已經生成了這麼多文件,包括 controller、model、view、migration 文件,可以看看代碼具體的增刪改查操作。(由於還沒有生成表,所以數據不能入庫,繼續往下看。)
2、controller
例:創建 ccontroller category 有四個方法,index、store、update、delete
php oil g controller category index store update delete
生成控制器文件以及和方法對應的四個視圖文件。
如果想放到 controller 目錄下的 blog 目錄下,php oil g controller blog/category index store update delete
3、model
例:創建 model category 有 name 欄位
php oil g model category name:varchar
生成 model 及資料庫相關的 migration 文件
註:如果不需要 migration,後面加參數
php oil g model tag name:varchar --no-migration
如果需要軟刪除,則需要 model_soft
php oil g model post title:varchar[50] user_id:int --soft-delete
4、presenter
php oil g controller post action1 action2 --with-presenter
5、migration
♦ 執行文件遷移,及用 migration 文件自動創建表
php oil refine migrate
資料庫會有一張表叫 migration ,裡面記錄了所欲遷移的文件。
♦ 生成 migration 文件,或對錶進行操作,總之文件名要顧名思義。
php oil generate migration create_users name:text email:string[50] password:string[125] // 創建 users 表 php oil generate migration rename_table_users_to_accounts // 修改 users 表名為 accounts php oil generate migration add_bio_to_accounts bio:text // 添加欄位 bio php oil generate migration delete_bio_from_accounts bio:text // 刪除欄位 bio php oil generate migration rename_field_name_to_username_in_accounts // 修改欄位名 php oil generate migration drop_accounts
6、task
php oil g task newtask cmd1 cmd2
7、config
♦ php oil g config test hello:world 生成普通配置文件 test.php
♦ php oil g config package 生成 package.php
♦ php oil g config form --overwrite 重寫 core/config/ 目錄下的配置文件。
8、module
php oil g module blog 在 框架根目錄會多一個 blog 目錄。
四、執行一些任務的簡單命令 refine
同樣 help 看一下可執行的任務
php oil refine help
上面紅框的命令都可以試試看哦,有一些很有趣的效果
五、安裝或卸載包文件的命令 package
包文件資源在配置文件 package.php 中管理
php oil package install test-package 安裝 test-package 包
php oil package uninstall test-package 卸載包文件
六、方便隨時執行 php 的快捷命令 console
php oil console 會進入 PHP 環境中,隨意寫 php 代碼
七、可進行單元測試的命令 test
用於 unit test,等用過後再來補充。