Cara mengurus sambungan pangkalan data dan pertanyaan dalam perkhidmatan mikro PHP
Apabila membangunkan perkhidmatan mikro PHP, sambungan pangkalan data dan pertanyaan adalah bahagian yang sangat penting. Mengurus sambungan dan pertanyaan pangkalan data dengan betul boleh meningkatkan kebolehselenggaraan dan prestasi kod. Artikel ini akan memperkenalkan cara mengurus sambungan pangkalan data dan pertanyaan dengan betul dalam perkhidmatan mikro PHP dan menyediakan contoh kod khusus.
Berikut ialah contoh penggunaan PDO untuk menyambung ke pangkalan data MySQL:
$dsn = 'mysql:host=localhost;dbname=test;charset=utf8'; $username = 'root'; $password = ''; try { $db = new PDO($dsn, $username, $password); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo '连接数据库失败:' . $e->getMessage(); }
Berikut ialah contoh singleton sambungan pangkalan data yang mudah:
class Database { private static $instance; private $db; private function __construct() { $dsn = 'mysql:host=localhost;dbname=test;charset=utf8'; $username = 'root'; $password = ''; try { $this->db = new PDO($dsn, $username, $password); $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo '连接数据库失败:' . $e->getMessage(); } } public static function getInstance() { if (!self::$instance) { self::$instance = new self(); } return self::$instance; } public function getDB() { return $this->db; } } // 使用方式 $db = Database::getInstance()->getDB();
Berikut ialah contoh penggunaan pernyataan yang disediakan PDO untuk melaksanakan pertanyaan:
$username = 'admin'; $password = '123456'; // 预处理语句 $stmt = $db->prepare('SELECT * FROM users WHERE username = :username AND password = :password'); $stmt->bindParam(':username', $username); $stmt->bindParam(':password', $password); // 执行查询 $stmt->execute(); // 获取查询结果 $result = $stmt->fetchAll(PDO::FETCH_ASSOC); // 处理查询结果 foreach ($result as $row) { // ... }
Ringkasnya, mengurus sambungan dan pertanyaan pangkalan data dengan betul adalah sangat penting untuk pembangunan perkhidmatan mikro PHP. Menggunakan sambungan PDO untuk menyambung ke pangkalan data dan menggunakan mod tunggal untuk mengurus sambungan pangkalan data boleh meningkatkan kebolehselenggaraan dan prestasi kod. Pada masa yang sama, menggunakan pernyataan yang disediakan untuk melaksanakan pertanyaan boleh menghalang serangan suntikan SQL dan meningkatkan prestasi pertanyaan dengan berkesan. Saya harap artikel ini dapat membantu anda mengurus sambungan pangkalan data dan pertanyaan dengan lebih baik dalam perkhidmatan mikro PHP.
Sila ambil perhatian bahawa kod sampel di atas adalah untuk tujuan demonstrasi sahaja. Sila laraskan dan optimumkannya mengikut situasi sebenar semasa pembangunan sebenar.
Atas ialah kandungan terperinci Bagaimana untuk menguruskan sambungan pangkalan data dan pertanyaan dalam perkhidmatan mikro PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!