iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php tp框架中m怎么用
  • 252
分享到

php tp框架中m怎么用

2023-06-21 22:06:06 252人浏览 薄情痞子
摘要

这篇文章主要介绍了PHP tp框架中m怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php tp框架中的m方法用于实例化一个基础模型类,其用法有:1、实例化基础模型(M

这篇文章主要介绍了PHP tp框架中m怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

php tp框架中的m方法用于实例化一个基础模型类,其用法有:1、实例化基础模型(Model)类;2、实例化其他公共模型类;3、传入表前缀,数据库和其他信息。

本文操作环境:windows7系统、thinkphp v5.1版、DELL G3电脑

ThinkPHP函数详解:M方法  

M方法用于实例化一个基础模型类,和D方法的区别在于:

不需要自定义模型类,减少io加载,性能较好;

实例化后只能调用基础模型类(默认是Model类)中的方法;

可以在实例化的时候指定表前缀、数据库和数据库的连接信息;

D方法的强大则体现在你封装的自定义模型类有多强,不过随着新版ThinkPHP框架的基础模型类的功能越来越强大,M方法也比D方法越来越实用了。

M方法的调用格式:

M('[基础模型名:]模型名','数据表前缀','数据库连接信息')

我们来看下M方法具体有哪些用法:

实例化基础模型(Model) 类

在没有定义任何模型的时候,我们可以使用下面的方法实例化一个模型类来进行操作:

//实例化User模型$User = M('User');//执行其他的数据操作$User->select();

这种方法最简单高效,因为不需要定义任何的模型类,所以支持跨项目调用。缺点也是因为没有自定义的模型类,因此无法写入相关的业务逻辑,只能完成基本的CURD操作。

$User = M('User');

其实等效于:

$User = new Model('User');

表示操作think_user表。M方法和D方法一样也有单例功能,多次调用并不会重复实例化。M方法的模型名参数在转换成数据表的时候会自动转换成小写,也就是说ThinkPHP的数据表命名规范是全小写的格式。

实例化其他公共模型类

第一种方式实例化因为没有模型类的定义,因此很难封装一些额外的逻辑方法,不过大多数情况下,也许只是需要扩展一些通用的逻辑,那么就可以尝试下面一种方法。

$User = M('CommonModel:User');

改用法其实等效于:

$User = new CommonModel('User');

因为系统的模型类都能够自动加载,因此我们不需要在实例化之前手动进行类库导入操作。模型类CommonModel必须继承Model。我们可以在CommonModel类里面定义一些通用的逻辑方法,就可以省去为每个数据表定义具体的模型类,如果你的项目已经有超过100个数据表了,而大多数情况都是一些基本的CURD操作的话,只是个别模型有一些复杂的业务逻辑需要封装,那么第一种方式和第二种方式的结合是一个不错的选择。

传入表前缀、数据库和其他信息

M方法有三个参数,第一个参数是模型名称(可以包括基础模型类和数据库),第二个参数用于设置数据表的前缀(留空则取当前项目配置的表前缀),第三个参数用于设置当前使用的数据库连接信息(留空则取当前项目配置的数据库连接信息),例如:

$User = M('db2.User','think_');

表示实例化Model模型类,并操作db2数据库中的think_user表。

如果第二个参数留空或者不传,表示使用当前项目配置中的数据表前缀,如果操作的数据表没有表前缀,那么可以使用:

$User = M('db1.User',null);

表示实例化Model模型类,并操作db1数据库中的user表。

如果你操作的数据库需要不同的用户账号,可以传入数据库的连接信息,例如:

$User = M('User','think_','mysql://user_a:1234@localhost:3306/thinkphp');

表示基础模型类用Model,然后对think_user表进行操作,用user_a账号进行数据库连接,操作数据库是thinkphp。

第三个连接信息参数可以使用DSN配置或者数组配置,甚至可以支持配置参数。

例如,在项目配置文件中配置了:

'DB_CONFIG'=>'Mysql://user_a:1234@localhost:3306/thinkphp';

则可以使用:

$User = M('User','think_','DB_CONFIG');

基础模型类和数据库可以一起使用,例如:

$User = M('CommonModel:db2.User','think_');

如果要实例化分层模型的话,利用公共模型类的方式,我们可以使用:

M('UserLogic:User');

来实例化UserLogic,虽然这样做的意义不大,因为可以用

D('User','Logic');

实现同样的功能。

感谢你能够认真阅读完这篇文章,希望小编分享的“php tp框架中m怎么用”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网PHP编程频道,更多相关知识等着你来学习!

--结束END--

本文标题: php tp框架中m怎么用

本文链接: https://www.lsjlt.com/news/301068.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php tp框架中m怎么用
    这篇文章主要介绍了php tp框架中m怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php tp框架中的m方法用于实例化一个基础模型类,其用法有:1、实例化基础模型(M...
    99+
    2023-06-21
  • TP框架中session()的用法
    这篇文章主要介绍“TP框架中session()的用法”,在日常操作中,相信很多人在TP框架中session()的用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”TP框架中session()的用法”的疑惑有所...
    99+
    2023-06-20
  • tp框架中如何使用redis
    tp框架中使用redis的示例:直接调用框架自带的Redis类:例如:路径为:\ThinkPHP\Library\Think\Cache\Driver\Redis.class.php。示例代码:public function test(){...
    99+
    2024-04-02
  • TP框架怎么打印SQL
    TP框架(ThinkPHP框架)是一个使用PHP语言编写的开源Web应用框架,它提供了一系列快捷简单的方法,方便PHP开发人员快速构建Web应用程序。如果想要在TP框架中打印SQL语句,可以通过以下几...
    99+
    2023-09-04
    sql 数据库 php thinkphp框架 thinkphp
  • TP框架中的钩子有什么作用
    这篇文章主要介绍“TP框架中的钩子有什么作用”,在日常操作中,相信很多人在TP框架中的钩子有什么作用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”TP框架中的钩子有什么作用”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-25
  • TP框架中/ThinkPHP/Library/Think/Storage/Driver/File.class.php 错误
    ​:(_STORAGE_WRITE_ERROR_:./Application/Runtime/Cache/Home/2a94b8bda04ff446dcedd42276fc99ee.php错误位置FILE: /www/wwwroot/531...
    99+
    2023-09-14
    php 服务器 开发语言
  • 怎么在php中使用Zend框架
    这篇文章给大家介绍怎么在php中使用Zend框架,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。PHP开发环境搭建工具有哪些一、phpStudy,是一个新手入门最常用的开发环境。二、WampServer,WampServ...
    99+
    2023-06-14
  • PHP中ThinkPhp框架的token怎么用
    小编给大家分享一下PHP中ThinkPhp框架的token怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!python可以做什么Python是一种编程语言,内置了许多有效的工具,Python几乎无所不能,该语言通俗易懂...
    99+
    2023-06-14
  • 怎么在php中使用swoft框架
    本篇文章为大家展示了怎么在php中使用swoft框架,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。PHP开发环境搭建工具有哪些一、phpStudy,是一个新手入门最常用的开发环境。二、WampSer...
    99+
    2023-06-14
  • 11月25日:tp框架中的架构,配置,路由,控制器
    tp框架的主要内容 架构: https://static.kancloud.cn/manual/thinkphp5/118010 配置: 配置文件主要位置  可以使用Config::load()调用thinkphp中的静态方法,显示出co...
    99+
    2023-10-11
    php 架构
  • PHP的CI框架怎么用
    小编给大家分享一下PHP的CI框架怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!CI是PHP的一个框架,使用该框架可以使得...
    99+
    2024-04-02
  • php CodeIgniter框架怎么使用
    使用 CodeIgniter 框架分为以下几个步骤: 下载和安装 CodeIgniter 框架:你可以从 CodeIgniter...
    99+
    2023-10-22
    php CodeIgniter
  • php中yii框架有什么用
    这篇文章主要介绍php中yii框架有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!php是什么语言php,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩...
    99+
    2023-06-14
  • 怎么在php中安装Phaicon框架
    本篇文章为大家展示了怎么在php中安装Phaicon框架,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。php的框架有哪些php的框架:1、Laravel,Laravel是一款免费并且开源的PHP应用...
    99+
    2023-06-14
  • 使用php怎么往lavarel框架中添加类
    使用php怎么往lavarel框架中添加类?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的...
    99+
    2023-06-14
  • php中有什么常用的框架
    这篇文章给大家分享的是有关php中有什么常用的框架的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、ThinkPHPThinkPHP(FCS)是一个轻量级的中型框架,是从Java的Struts结构移植过来的中文P...
    99+
    2023-06-15
  • Node.js中Express框架怎么用
    本篇内容主要讲解“Node.js中Express框架怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Node.js中Express框架怎么用”吧!很多语言都有一些框架,这些框架可以帮助我们更...
    99+
    2023-06-17
  • HTML中框架iframe怎么用
    这篇文章主要介绍了HTML中框架iframe怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 HTML - 框架iframe 通过使...
    99+
    2024-04-02
  • Node.js中Koa框架怎么用
    这篇文章主要介绍“Node.js中Koa框架怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Node.js中Koa框架怎么用”文章能帮助大家解决问题。KoaKoa 是为了解决 ...
    99+
    2023-06-17
  • php中rpc框架是什么
    这篇文章主要介绍php中rpc框架是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!什么是RPC框架?通常我们调用一个php中的方法,比如这样一个函数方法: localAdd(10, 20),localAdd方法的...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作