加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

ThinkPHP自动完成中使用函数与回调方法实例

发布时间:2020-12-13 02:13:30 所属栏目:PHP教程 来源:网络整理
导读:《:ThinkPHP自动完成中使用函数与回调方法实例》要点: 本文介绍了:ThinkPHP自动完成中使用函数与回调方法实例,希望对您有用。如果有疑问,可以联系我们。 本篇章节讲解ThinkPHP自动完成中使用函数与回调办法.供大家参考研究.具体办法如下: PHP

《:ThinkPHP自动完成中使用函数与回调方法实例》要点:
本文介绍了:ThinkPHP自动完成中使用函数与回调方法实例,希望对您有用。如果有疑问,可以联系我们。

本篇章节讲解ThinkPHP自动完成中使用函数与回调办法.分享给大家供大家参考.具体办法如下:PHP编程

ThinkPHP 自动填充格式如下:
PHP编程

代码如下:
array(填充字段,填充内容[,填充条件][,附加规则])

附加规则,可选,包括:PHP编程

string:字符串,表示填充内容为字符串(默认).PHP编程

function:使用函数,表示填充的内容是一个函数返回值.PHP编程

callback:使用办法,表示填充的内容是一个当前 Model 的办法返回值.PHP编程

field:字段,表示填充的内容是一个其他字段的值.PHP编程

ThinkPHP 自动填充使用函数functionPHP编程

当附加规则使用函数function填充时,表示填充的内容是一个函数返回值,这个函数可以是PHP内置函数或用户自定义函数.PHP编程

使用函数填充例子:
PHP编程

代码如下:
class UserModel extends Model{??
protected $_auto = array (??
// 对password字段在所有情况下使用md5函数处理??
array('password','md5',3,'function'),??
// 对regdate字段在新增时写入当前时间戳??
array('regdate','time',1,??
// 对regip字段在新增时写入用户注册IP地址??
array('regip','get_client_ip',??
// 对username字段在新增时使用自定义getName函数??
array('username','get_name',??
);??
}

在上面的例子中,使用的 md5 和 time 为 PHP 内置函数,填充结果为 md5($_POST['password']) 值和 time() 函数值,get_client_ip 和 get_name 为 Common/common.php 自定义函数.

get_name 函数将用户名加上 th_ 前缀,参考如下:
PHP编程

代码如下:
function get_name($name){??
return 'th_'.$name;??
}

如果函数需要参数,则将填充字段作为参数,如上面的 md5 和 get_name 函数填充.

ThinkPHP 自动填充使用办法callbackPHP编程

当使用办法 callback 填充时,表示填充的内容是一个当前 Model 的办法返回值,使用 callback 填充例子:
PHP编程

代码如下:
class UserModel extends Model{??
protected $_auto = array (??
// 对username字段在新增时回调getName办法??
array('username','getName','callback'),??
);??
}

getName办法将用户名加上 th_ 前缀,参考如下:
代码如下:
class UserModel extends Model{??
// 将传入的username加上th_前缀??
function getName(){??
return 'th_'.$_POST['username'];??
}??
}

注:上述例子将 username 字段前自动加上 th_ 前缀而填充到 username 中,仅是为了说明自动填充使用函数或回调办法的用法,可能并无实际生产意义

希望本文所述对大家的ThinkPHP框架程序设计有所帮助.PHP编程

编程之家培训学院每天发布《:ThinkPHP自动完成中使用函数与回调方法实例》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读