====================================================
一、常用连贯操作
1.where
帮助我们设置查询条件
2.order
对结果进行排序
$arr=$m->order('id desc')->select();
$arr=$m->order(array('id'=>'desc','sex'=>'asc'))->select();
3.limit
限制结果
limit(2,5)
limit('2,5')
limit(10)//limit(0,10)
4.field
设置查询字段
field('username as name,id')
field(array('username'=>'name','id')
field('id',true) //获取除了id以外的所有字段
5.table
6.group
7.having
二、补充
alias 用于给当前数据表定义别名 字符串
page 用于查询分页(内部会转换成limit) 字符串和数字
join* 用于对查询的join支持 字符串和数组
union* 用于对查询的union支持 字符串、数组和对象
distinct 用于查询的distinct支持 布尔值
lock 用于数据库的锁机制 布尔值
cache 用于查询缓存 支持多个参数(以后在缓存部分再详细描述)
relation 用于关联查询(需要关联模型扩展支持) 字符串
validate 用于数据自动验证 数组
auto 用于数据自动完成 数组
filter 用于数据过滤 字符串
scope* 用于命名范围 字符串、数组
补充部分会在以后在详细探讨
在定义一个类时,因为没有对类实例化(对象),因而也无法得知对象的具体名称是什么。
这时,如果想调用类中的成员方法或成员变量,就只能通过伪变量$this调用,$this顾名思义就是指类本身,需要注意的一点是$this 只能在类内部使用。否则将出错
类似perl 中的$self
bless 引用 特定的包
perl 对象实现:
bless 以一个普通的指向数据结构的引用为参数。它将会把那个数据结构(注意,不是引用本身)
标记为属于某个特定的包,
<?php
class UserAction extends Action{
public function index(){
echo "你好!";
$m=M('user');
$arr=$m->select();
#var_dump($arr);
$this->assign('data',$arr);
$this->display();
}
public function del(){
$m=M('user');
##删除具体id数据
$id=$_GET['id'];
$count=$m->delete($id);
echo $count;
if ($count>0){
$this->success('数据删除成功');
}else{
$this->error('数据删除失败');
}
}
//负责修改页面
public function modify(){
$id=$_GET['id'];
$m=M('user');
$arr=$m->find($id);
$this->assign('data',$arr);
$this->display();
}
public function update(){
$m=M('user');
$data['id']=$_POST['id'];
$data['username']=$_POST['username'];
$data['sex']=$_POST['sex'];
$count=$m->save($data);
if ($count>0){
$this->success('数据修改成功','index');
}else{
$this->error('数据修改失败');
}
}
public function add(){
$this->display();
}
public function create(){
$m=M('user');
$m->id=$_POST['id'];
$m->username=$_POST['username'];
$m->sex=$_POST['sex'];
$idnum=$count=$m->add();
if ($idnum){
$this->success('数据添加成功','index');
#$this->success('数据添加成功');
}else{
$this->error('数据添加失败');
}
}
public function search(){
var_dump($_POST);
// 获取POSTT的数据,根据数据组查询的条件,根据条件从数据库中获取数,
//返回给页面遍历
$m=M('user');
if (isset($_POST['username']) && $_POST['username'] !=null ){
$where['username']=$_POST['username'];
};
if (isset($_POST['sex']) && $_POST['sex'] !=null){
$where['sex']=$_POST['sex'];
};
#$where['logic']
echo $where['username'];
echo $where['sex'];
$arr=$m->where($where)->select();
$this->assign('data',$arr);
$this->display('index');
}
public function show(){
$m=M('user');
#$arr=$m->order('id asc')->select();
$arr=$m->order('id asc')->limit(3,6)->field('username as name,id')->select();
dump($arr);
$this->display();
}
}
?>