search
HomeBackend DevelopmentPHP Tutorial ThinkPHP学习札记(六)实例化模型的四种方法

ThinkPHP学习笔记(六)实例化模型的四种方法


本文是基于ThinkPHP学习笔记(五)进行修改的,如果有同学使用本代码,请先阅读ThinkPHP学习笔记(五)

创建Action类

<?php class NewObjectAction extends Action{
	public function index(){
		//1.创建一个基础模型
//		//一:实例化一个系统的数据库操作类
//		//new Model('User')相当于M('User'),在Model中放置一个需要操作的表
//		//1命名:
//		//	thinkphp默认的有表名前缀,如果为think_user;则在Model中可以使用User或者user来获取
//		//	如果是think_user_message;则使用Model('UserMessage');大写表示对于的表名前面加上一个_
//		$User=new Model('User');
//		//调用查询方法
//		$list=$User->select();
//		dump($list);
		
//		//二:跨模型操作;实例化一个表,同时实例化一个自己写的数据库操作类
		//多用于将一些公共的业务逻辑抽离出来形成公共的Model
//		//M('user','CommonModel')相当于new CommonModel('user');model是自动载入的
////		$user=M('user','CommonModel');
//		$user=new CommonModel('user');
//		$list=$user->select();
//		dump($list);
//		$user->modelTest();
		
		//三:实例化一个用户定义的模型
		//多用于不需要更加复杂的业务
		//1.手动创建一个模型,针对user表创建一个自定义模型,可以封装thinkphp提供的功能
		//$user=new UserModel()相当于D('user');
		//D方法如果模型不存在,则抛出异常,只会实例一个,默认,只支持调用当前应用下面的模型
//		$user=new UserModel();
//		$list=$user->select();
//		dump($list);
//		$user->modelTest();
		
		//四、实例化一个空模型;就是传统sql语句的方式;需要加表前缀
		//
		$user=new Model();
		$list=$user->query('select * from tb_user');
		dump($list);
		
		//分组:D('admin.user');
	}
}
?>

两个模型:

<?php class CommonModel extends Model{
		function modelTest(){
			echo '测试的跨模型操作,调用模型中的方法';
		}
	}
?>

<?php class UserModel extends Model{
		
		
		function modelTest(){
			echo '测试的跨模型操作,调用模型中的方法';
		}
	}
?>


Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
一起聊聊thinkphp6使用think-queue实现普通队列和延迟队列一起聊聊thinkphp6使用think-queue实现普通队列和延迟队列Apr 20, 2022 pm 01:07 PM

本篇文章给大家带来了关于thinkphp的相关知识,其中主要介绍了关于使用think-queue来实现普通队列和延迟队列的相关内容,think-queue是thinkphp官方提供的一个消息队列服务,下面一起来看一下,希望对大家有帮助。

php如何实现Redis的List操作php如何实现Redis的List操作May 26, 2023 am 11:51 AM

List操作//从list头部插入一个值。$ret=$redis->lPush(&#39;city&#39;,&#39;guangzhou&#39;);//从list尾部插入一个值。$ret=$redis->rPush(&#39;city&#39;,&#39;guangzhou&#39;);//获取列表指定区间中的元素。0表示列表第一个元素,-1表示最后一个元素,-2表示倒数第二个元素。$ret=$redis->l

thinkphp3.2怎么关闭调试模式thinkphp3.2怎么关闭调试模式Apr 25, 2022 am 10:13 AM

在thinkphp3.2中,可以利用define关闭调试模式,该标签用于变量和常量的定义,将入口文件中定义调试模式设为FALSE即可,语法为“define('APP_DEBUG', false);”;开启调试模式将参数值设置为true即可。

Trezor冷钱包:Model One与Model T的特性和使用指南Trezor冷钱包:Model One与Model T的特性和使用指南Jan 19, 2024 pm 04:12 PM

在许多中心化交易所出现问题后,越来越多的币圈投资者开始将资产转移到冷钱包中,以减少中心化交易所带来的风险。本文将介绍全球最早的冷钱包供应商Trezor,自2014年推出首款冷钱包至今,在全球多个国家销售。Trezor的产品包括2014年推出的ModelOne和2018年推出的进阶版本ModelT。下面将继续介绍这两款产品与其他冷钱包的区别。什么是Trezor冷钱包?2014年,Trezor推出了第一款冷钱包ModelOne。除了常见的BTC、ETH、USDT等币种外,该钱包还支持超过1000种其

java中JSONArray互相转换List怎么实现java中JSONArray互相转换List怎么实现May 04, 2023 pm 05:25 PM

1:JSONArray转ListJSONArray字符串转List//初始化JSONArrayJSONArrayarray=newJSONArray();array.add(0,"a");array.add(1,"b");array.add(2,"c");Listlist=JSONObject.parseArray(array.toJSONString(),String.class);System.out.println(list.to

docker挂载目录权限问题怎么解决docker挂载目录权限问题怎么解决Feb 29, 2024 am 10:04 AM

在Docker中,挂载目录的权限问题通常可以通过以下方法解决:使用-v参数指定挂载目录时添加权限相关的选项。可以通过在挂载的目录后面添加:ro或:rw来指定挂载目录的权限,分别表示只读和读写权限。例如:dockerrun-v/host/path:/container/path:roimage_name在Dockerfile中定义USER指令来指定容器中运行的用户,以确保容器内部的操作符合权限要求。例如:FROMimage_name#CreateanewuserRUNuseradd-ms/bin/

如何使用C#中的List.Sort函数对列表进行排序如何使用C#中的List.Sort函数对列表进行排序Nov 17, 2023 am 10:58 AM

如何使用C#中的List.Sort函数对列表进行排序在C#编程语言中,我们经常需要对列表进行排序操作。而List类的Sort函数正是为此设计的一个强大工具。本文将介绍如何使用C#中的List.Sort函数对列表进行排序,并提供具体的代码示例,帮助读者更好地理解和应用该函数。List.Sort函数是List类的一个成员函数,用于对列表中的元素进行排序。该函数接

为什么在Python中list.sort()不会返回已排序的列表?为什么在Python中list.sort()不会返回已排序的列表?Sep 18, 2023 am 09:29 AM

示例在这个例子中,我们先看看list.sort()的用法,然后再继续。在这里,我们创建了一个列表并使用sort()方法按升序排序-#CreatingaListmyList=["Jacob","Harry","Mark","Anthony"]#DisplayingtheListprint("List=",myList)#SorttheListsinAscendingOrdermyList.sort(

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function