您的位置:首页 > 编程语言 > PHP开发

实例化模型的各种方法(thinkphp)

2011-08-29 20:41 483 查看
<?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action{
    public function index(){
		//实例化模型第一种方法
		
		
		//$User=new Model('User');//首字母大写,在此也可以不大写。命名表的时候,think_user,think_php会按照大小写来区别你在前面有没有加下划线,如果是大写的U说明前面有一个下划线,第一个首字母可以不用大写,也可以大写。think_user_message ('UserMessage')和('User_message')一致
		//$User=M('User');//便捷操作
		//实例化模型后就可以使用这个模型
		
		
		//实例化模型第二种方法
		//实例化一张表时同时 实例化一个自己定义的模型
		//$user=M('user','CommonModel');//$user=new CommonModel('user');
		
		
		
		//实例化模型的第三种方法
		//实例化自定义的模型 需要手动创建一个模型,此模型中可以封装一些方法
		//$user=new UserModel();//不需要传额外的表名了
		//$user=D('User');//便捷方法 不需要model了; 和非便捷方法的区别:D方法可以自动检测模型类,不存在时,她会抛出一个异常,对于已实例化过的模型,不会去重复实例化,默认的D方法只能支持调用当前项目下面的模型
		//如果这是前台项目,但是想实例化后台项目模型怎么办?
		//user 类,(模型)
		//$user=D('admin','user');
		
		
		//第二种和第三种方法的区别:公共业务逻辑用第二种M('user','CommonModel');更加复杂的业务逻辑用第三种,
		
		//$list=$user->select();//返回所有数据,find()返回一条数据
//		dump($list);
//		$user->add();//调用CommonModel的函数
		
		//实例化模型第四种,实例化一个空模型,并不知道实例化的是哪一张表
		//$user=new Model();
		$user=M();
		$list=$user->query('select * from think_user');//传统的sql语句
		dump($list);
		
    }

	
	
	public function io(){
		echo '你到底想怎样'.'<br>';
		echo $_GET['get1']."<br>";
		echo $_GET['get2'];
	}
}
?>
<?php
class CommonModel extends Model{
	function add(){
		echo 'aaaaa';
	}
}

?>


//<?php
//class UserModel extends Model{
//	//不使用think_user 这张表使用其他表,tp提供了一个专门的成员属性
//	protected $tableName='UserInfo';//不加表前缀
//	//如果想访问前缀不是think_的,比如top_,cms_,tp也提供了一个成员属性
//	protected $trueTableName='cms_user';
//	function add(){
//		echo 'bbbbb';
//	}
//
//}
//
//?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: