批改狀態(tài):未批改
老師批語:
用接口定義常量,類來完成接口連接數(shù)據(jù)庫方法,類外部執(zhí)行數(shù)據(jù)庫操作指令并打印結(jié)果:
<?php //命名空間 namespace Demo; use PDO; if (!interface_exists(__NAMESPACE__.'\iDb')){ //創(chuàng)建接口,用于保存連接數(shù)據(jù)庫的必要信息 interface iDb { //定義常量 const TYPE = 'mysql'; const HOST = '127.0.0.1'; const USER_NAME = 'root'; const PASSWORD = 'root'; const DBNAME = 'php'; //接口中創(chuàng)建一個(gè)連接方法,在類中必須實(shí)現(xiàn) public static function Connection (); } } class Connection implements namespace\iDb { // 初始化連接參數(shù) private static $type = iDb::TYPE; private static $host = iDb::HOST; private static $userName = iDb::USER_NAME; private static $password = iDb::PASSWORD; private static $dbname = iDb::DBNAME; public static function Connection() { $dsn = self::$type.':host='.self::$host.';dbname='.self::$dbname; $user = self::$userName; $password = self::$password; $pdo = new PDO($dsn,$user,$password); //返回pdo對象 return $pdo; } } ////測試PDO是否拼接完整 //$test = Connection::Connection(); //echo $test->Connection(); //連接數(shù)據(jù)庫 $db = Connection::Connection(); //執(zhí)行查詢 $stmt = $db->prepare('SELECT * FROM staff LIMIT 3'); $stmt->execute(); //在頁面打印查詢結(jié)果 print_r($stmt->fetchAll(PDO::FETCH_ASSOC));
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
頁面上打印數(shù)據(jù)庫查詢結(jié)果:
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號