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 等。