getBy动态查询

ThinkPHP getBy动态查询是一个魔术方法,可以根据某个字段名称动态得到对应的一条数据记录。

根据用户名(username)查询对应的用户资料记录:

public function chekUser(){
    header("Content-Type:text/html; charset=utf-8");
    $Dao = M("User");

    // 查询数据
    $user = $Dao->getByUsername('Admin');

    if($list){
        echo '用户名存在';
    }else{
        echo '用户名不存在';
    }
}

方法中传入的参数是查询的字段对应的值,上面例子执行的 SQL 语句为:

SELECT * FROM user WHERE username = 'Admin' LIMIT 1

请注意,在getBy之后紧跟着的字段名称,首字母必须大写。对于如 user_name 这样的字段名称,以驼峰法自动识别下划线,即:

$user = $Dao->getByUserName('Admin');

实际使用中可以灵活根据查询的字段名来定义 getBy 放入,如:getByEmail、getByTitle、getById 等。

posted on 2017-10-24 08:54  锋齐叶落  阅读(616)  评论(0编辑  收藏  举报