開發人員很多時候是在做一些重複的工作。
針對不同資料表的增刪改查都差不多,重複來重去的。很久不寫程式了,利用十一假期在家看看書,寫寫程式。
最近一直很喜歡使用Sublime Text,發現它的代碼片斷管理功能不錯,只要輸入事先定義好的短語,大段的程式碼片段就可以自動填滿進來。還可以定義變數。
如PHP代碼。可以使用 ${0}的方式定義每一個參數,其它依次類推。如果想在程式碼片段中保留$符,只要在$前面加上\就可以了。如: \$data
設定步驟如下:
1,選擇Tools -》 New Snippet
這樣將會建立一個空的程式碼片段模板。如下:
<![CDATA[
<snippet>
<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<!-- <tabTrigger>hello</tabTrigger> -->
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<!-- <scope>source.python</scope> -->
</snippet>
在[ ] 中間放入你的代碼,想替換哪兒個關鍵詞就用${} 來改寫,中間的數字為游標的順序,按TAB鍵進行切換。
tabTrigger:為在編輯器中輸入的關鍵詞,然後按TAB鍵
scope:為在哪兒類來源程式中起作用,當然可以不設定
description:為提示說明資訊
寫好後,儲存。記住一定要儲存為 .sublime-snippet 副檔名。如果開啟一個已存在的,可以通過Preferences -》Browse Packages 在user目中就可以找到了。請注意,我使用的是MAC的本本,不知道windows系統下在什麼位置,沒在windows下用過這個軟體。
下面是我寫的一個小模板:
<snippet>
<content><![CDATA[
/**
* 刪除
* @param string \$${1} 資料記錄的標識ID
* @param string \$${2:tabelname} 資料表名稱
* @return void
**/
public function del(){
\$${1} = trim(\$_GET['${1}']);
if(empty(\$${1})){
\$this->error('該記錄不存在!');
}
\$result = M('${2:tabelname}')->where(array('${1}'=>\$${1}))->delete();
\$this->message(\$result,'__URL__/index','刪除成功!','刪除失敗!');
}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>tpdel</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<!-- <scope>source.python</scope> -->
<description>ThinkPHP - del() 刪除一條資料方法</description>
</snippet>
用Sublime Text 3 很順手,可是在寫PHP程式時候調試並不方便,寫PHP程式還是用PhpStorm好用,我用的是PhpStorm6 。經過了上面的情況,就想在PhpStorm下是不是也能這樣做呢。經過研究發現這個開發工具也可以,真是很爽啊。 提示:在編輯器中 command + J 就可以有提示了。在windows下應該ctrl + J 。
使用方式是:
在Preferences裡有一個 Live Templates 設定項,那兒裡面有不少例子,可以試試啊。模板的編輯方式與上面Sublime Text差不多。只是這兒裡不需要用\來轉義。
如果想在模板中保留$符,只要輸入$$就可以了。還支援設定參數的預設值及輸出後自動格式化。
善用開發工具,開發效率會大大的提高。