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

 更新时间:2014年11月29日 10:03:15   投稿:shichen2014   我要评论

这篇文章主要介绍了ThinkPHP自动完成中使用函数与回调方法,实例分析了ThinkPHP中自动填充的用法以及使用函数与回调的方法,是非常实用的技巧,需要的朋友可以参考下

本文实例讲述了ThinkPHP自动完成中使用函数与回调方法。分享给大家供大家参考。具体方法如下:

ThinkPHP 自动填充格式如下:

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

附加规则,可选,包括:

string:字符串,表示填充内容为字符串(默认)。

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

callback:使用方法,表示填充的内容是一个当前 Model 的方法返回值。

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

ThinkPHP 自动填充使用函数function

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

使用函数填充例子:

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

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

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

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

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

ThinkPHP 自动填充使用方法callback

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

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

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

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

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

相关文章

  • PHP 根据IP地址控制访问的代码

    PHP 根据IP地址控制访问的代码

    有时需要根据 IP 地址控制访问,以限制或引导某些访问请求。比如允许局域网段中的访客正常访问,但禁止外网访问。芒果简单介绍用 PHP 脚本实现此功能的方法。
    2010-04-04
  • PHP树-不需要递归的实现方法

    PHP树-不需要递归的实现方法

    下面小编就为大家带来一篇PHP树-不需要递归的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • php curl获取到json对象并转成数组array的方法

    php curl获取到json对象并转成数组array的方法

    今天小编就为大家分享一篇php curl获取到json对象并转成数组array的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Google PR查询接口checksum新算法

    Google PR查询接口checksum新算法

    前些日子一篇N久之前的老文忽然成了被阅读的热点,检查之后才发现自己使用那段代码来做pr查询的页面已经不能正常得到URL的Page Rank值了
    2009-01-01
  • 详解PHP如何更好的利用PHPstorm的自动提示

    详解PHP如何更好的利用PHPstorm的自动提示

    本篇文章主要介绍了详解PHP如何更好的利用PHPstorm的自动提示,具有一定的参考价值,有兴趣的可以了解一下
    2017-08-08
  • PHP实现简易blog的制作

    PHP实现简易blog的制作

    本篇文章主要介绍了PHP实现简易blog的制作,可以显示添加删除blog,有需要的可以了解一下。
    2016-10-10
  • php实现查询功能(数据访问)

    php实现查询功能(数据访问)

    这篇文章主要介绍了php实现查询功能,数据进行访问,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • thinkPHP5框架分页样式类完整示例

    thinkPHP5框架分页样式类完整示例

    这篇文章主要介绍了thinkPHP5框架分页样式类,结合完整实例形式分析了thinkPHP5带css样式控制的分页类定义与简单使用方法,需要的朋友可以参考下
    2018-09-09
  • thinkphp的静态缓存用法分析

    thinkphp的静态缓存用法分析

    这篇文章主要介绍了thinkphp的静态缓存用法,较为详细的分析了静态缓存的配置方法与相关操作的技巧,具有一定的实用价值,需要的朋友可以参考下
    2014-11-11
  • golang实现php里的serialize()和unserialize()序列和反序列方法详解

    golang实现php里的serialize()和unserialize()序列和反序列方法详

    这篇文章主要介绍了golang实现php里的serialize()和unserialize()序列和反序列方法详解,需要的朋友可以参考下
    2018-10-10

最新评论