文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

怎么运用PHP进行数据库操作类

2024-04-02 19:55

关注

这篇文章主要为大家展示了“怎么运用PHP进行数据库操作类”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么运用PHP进行数据库操作类”这篇文章吧。

PHP高级实战-数据库操作类

主流php开发框架

父类(Mode1类 )

1、sql语句回顾

insert into user (name, age, money) values (' abc', 18, 1000) ;
update user set age=20, money=1500 where id=1;
delete from user where id=2;
select * from user where id=3 group by . . . having . . . order by ..limit

我们还是以代码为例,新建一个文件,定义一个class类,当我们在封装model类的时候我们需要加入成员变量,比如说主机名,用户名,密码,数据库名,字符集以及数据表前缀,接着我们连接数据库成功之后会返回一个资源,而我们需要把资源保存成成员变量,这样我们在其他地方使用的时候就非常方便了,因此我们加上数据库连接资源以及数据表名(自己可以指定表名)我们在调试数据库的时候经常会出现一些错误,因此我们调试错误都需要SQL语句,操作数组,存放的就是所有的查询条件;

具体代码如下:

<?php
class Model
{
  //主机名.
  protected $host;
  //用户名.
  protected $user;
  //密码
  protected $pwd;
  //数据库名
  protected $dbname;
 //字符集
 protected $charset;
 //数据表前缀
 protected $prefix;
 //数据库连接资源
 protected $link;
 //数据表名     这里可以自己指定表名
 protected $tableName ;
 //sql语句
 protected $sql;
 //操作数组存放的就是所有的查询条件
 protected $options;
}

因为有很多成员变量,因此我们需要对她初始化,

//filed方法

//table方法

/ /where方法

//group方法

/ /having方法

//order方法

//limit方法

,我们可以根据这些方法吧SQL语句拼接出来,只有这样我们才能实现查询。我们查询的时候需要两个方法,一个是query一个是exec方法;代码如下:

 //构造方法,对成员变量进行初始化
 function_construct()
 {
 }
我们构造完之后,上面刚刚写的代码都需要初始化,太多,我们可以传递一个数组进来,
  function_construct( $config)
  {
  //对成员变量一一进行初始化
  $this->host = $config['DB_HOST'];
  $this->user = $config['DB_USER'];
  $this->pwd = $config['DB_PWD'] ;
  $this ->dbname = $config['DB_NAME ' j;
  $this->charset = $config['DB_CHARSET'] ;
  $this->prefix = $config['DB_PREFIX'] ;
  }
  紧接着我们需要连接数据库:
  //连接数据库
  $this->link = $this ->connect();
}
protected function connect( )
{
  $link = mysqli_connect($this->host, $this->user,$this->pwd) ; .
if (!$link) {
die('数据库连接失败');
  }

//选择数据库

mysqli_select_db($link, $this->dbname);

//设置字符集

mysqli_set_charset($link, $this->charset);

//返回连接成功的资源

return $link;
 }

以上是“怎么运用PHP进行数据库操作类”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯