Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

truy vấn cơ sở dữ liệu mysql từ bên trong một lớp

Chuyển nó vào chính phương thức

Bạn phải chuyển đối tượng cơ sở dữ liệu cho phương thức, vì chúng không ở cùng phạm vi:

function runQuery($mysqli)

và gọi nó như

$a = new theClass;
$a->runQuery($mysqli);

Chuyển nó cho hàm tạo

Nếu lớp của bạn thực hiện nhiều lệnh gọi cơ sở dữ liệu, bạn có thể chỉ cần chuyển nó vào hàm tạo và lưu nó dưới dạng biến riêng để sử dụng sau này:

class theClass
{
  private $mysqli;

  function __construct($mysqli) {
    $this->mysqli = $mysqli;
  }

  function runQuery()
  {
    $query = "SELECT col_1 FROM db.table";
    $stmt = $this->mysqli->prepare($query);
    stmt->execute();
    $stmt->bind_result($r);

    while($stmt->fetch())
    {
      echo $r . "<br>";
    }
  }
};

và gọi nó như

$a = new theClass($mysqli);
$a->runQuery();

Cả hai phương pháp đều làm rõ rằng lớp phụ thuộc của bạn là một đối tượng mysqli, rất tốt cho việc bảo trì và dễ đọc trong tương lai.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tính số ngày giữa hai ngày trong PHP?

  2. Theo dõi thời gian thực trong bản đồ google

  3. Chèn nhiều hàng mysql bằng php

  4. Cách tiếp cận tốt nhất để thực hiện các truy vấn động (sử dụng PHP + MySQL) là gì?

  5. Xây dựng câu lệnh UPDATE bằng cách sử dụng mảng kết hợp trong PHP