国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > ThinkPHP > 正文

ThinkPHP 自動完成中使用函數(function)與回調方法(callback)

2024-09-09 15:19:39
字體:
來源:轉載
供稿:網友

ThinkPHP 自動填充格式如下:

array(填充字段,填充內容[,填充條件][,附加規則])

附加規則,可選,包括:

string:字符串,表示填充內容為字符串(默認)。

function:使用函數,表示填充的內容是一個函數返回值。

callback:使用方法,表示填充的內容是一個當前 Model 的方法返回值。

field:字段,表示填充的內容是一個其他字段的值。

ThinkPHP 自動填充使用函數function

當附加規則使用函數function填充時,表示填充的內容是一個函數返回值,這個函數可以是PHP內置函數或用戶自定義函數.

使用函數填充例子:

  1. class UserModel extends Model{  
  2. protected $_auto = array (  
  3. // 對password字段在所有情況下使用md5函數處理  
  4. array('password','md5',3,'function'),  
  5. // 對regdate字段在新增時寫入當前時間戳  
  6. array('regdate','time',1,'function'),  
  7. // 對regip字段在新增時寫入用戶注冊IP地址  
  8. array('regip','get_client_ip',1,'function'),  
  9. // 對username字段在新增時使用自定義getName函數  
  10. array('username','get_name',1,'function'),  
  11. );  

在上面的例子中,使用的 md5 和 time 為 PHP 內置函數,填充結果為 md5($_POST['password']) 值和 time() 函數值,get_client_ip 和 get_name 為 Common/common.php 自定義函數.

get_name 函數將用戶名加上 th_ 前綴,參考如下:

  1. function get_name($name){  
  2. return 'th_'.$name;  

如果函數需要參數,則將填充字段作為參數,如上面的 md5 和 get_name 函數填充.

ThinkPHP 自動填充使用方法callback

當使用方法 callback 填充時,表示填充的內容是一個當前 Model 的方法返回值,使用 callback 填充例子:

  1. class UserModel extends Model{  
  2. protected $_auto = array (  
  3. // 對username字段在新增時回調getName方法  
  4. array('username','getName',1,'callback'),  
  5. );  

getName方法將用戶名加上 th_ 前綴,參考如下:

  1. class UserModel extends Model{  
  2. // 將傳入的username加上th_前綴  
  3. function getName(){  
  4. return 'th_'.$_POST['username'];  
  5. }  

注:上述例子將 username 字段前自動加上 th_ 前綴而填充到 username 中,僅是為了說明自動填充使用函數或回調方法的用法,可能并無實際生產意義.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 定安县| 罗田县| 宝兴县| 正镶白旗| 潼南县| 固始县| 新蔡县| 东丽区| 鹤庆县| 蒲城县| 新绛县| 安龙县| 阳城县| 西宁市| 临夏县| 无极县| 台北县| 西安市| 平顶山市| 高青县| 上虞市| 泗洪县| 山丹县| 伊通| 江永县| 西丰县| 宁波市| 百色市| 长治县| 武城县| 乌拉特后旗| 玉树县| 襄汾县| 常熟市| 庆阳市| 偏关县| 濮阳县| 曲麻莱县| 东山县| 剑阁县| 湟源县|