加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在我的用户类中使用数据库类

发布时间:2020-12-13 18:24:00 所属栏目:PHP教程 来源:网络整理
导读:在我的项目中,我有一个数据库类,用于处理所有 MySQL的东西.它连接到数据库,运行查询,捕获错误并关闭连接. 现在我需要在我的站点上创建一个成员区域,我打算构建一个用户类来处理注册,登录,密码/用户名更改/重置和注销.在这个用户类中,我需要使用MySQL,原因很
在我的项目中,我有一个数据库类,用于处理所有 MySQL的东西.它连接到数据库,运行查询,捕获错误并关闭连接.

现在我需要在我的站点上创建一个成员区域,我打算构建一个用户类来处理注册,登录,密码/用户名更改/重置和注销.在这个用户类中,我需要使用MySQL,原因很明显……这就是我的数据库类所针对的.

但是我对如何在用户类中使用我的数据库类感到困惑.我是否想为我的用户类创建一个新的数据库对象,然后只要该类中的方法完成就关闭它?或者我以某种方式创建一个可以在整个脚本中使用的“全局”数据库类(如果是这种情况,我需要帮助,不知道该怎么做.)

感谢您提供给我的任何反馈.

简单,3步过程.
1 /创建数据库对象.
2 /将它提供给用户类构造函数.
3 /在用户方法中使用它.

很少的例子.

文件Database.class.php:

<?php
class Database{
  public function __construct(){
    // Connects to database for example.
  }

  public function query($sqlQuery){
    // Send a query to the database
  }
  [...]
}

在User.class.php中:

<?php

class User{
  private $_db;
  public function __construct(Database $db){
    $this->_db = $db;
  }

  public function deleteUser(){
    $this->_db->query('DELETE FROM Users WHERE name = "Bobby"');
  }
}

现在,在userManager.php中,例如:

<?php
$db = new Database();
$user = new User($db);
// Say bye to Bobby :
$user->deleteUser();

如果你想要这个旧技术的当前流行名称,请谷歌“依赖注入”. php中的Singleton模式很快就会消失.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读