Heim Backend-Entwicklung PHP-Tutorial php的mysql函数仿pdo操作数据库类_PHP教程

php的mysql函数仿pdo操作数据库类_PHP教程

Jul 13, 2016 pm 05:47 PM
mysql pdo php 函数 Wille werden 操作 数据库 方式 标准 von

 

PDO显然将成为php的标准数据库操作方式。虽然国内的很多php空间或主机都已支持php5.2以上的版本了,但由于普及和技术上的原因还是有部分不支持pdo的。

 

由于从今年开始 哈尔滨智华软件的php课程在数据库操作的学习改为以pdo为主(当然课程在学习和最后实训时还是有mySQL函数操作数据库训练的),在实际开发中,我的学生不可避免的遇到了 采用pdo开发的程序,在程序实施时却发现服务器不支持pdo,好在都是客户的服务器,重新升级安装了一下php的新版本就解决了。

 

但这样却提出了一个问题?

要么开发用mySQL函数方式,

要么开发用pdo而后升级php版本,

要么发现用pdo开发无法升级php版本,用mySQL函数方式重写原有pdo方式代码

 

看来开发用开发用mySQL函数方式 似乎又成了最好的解决办法,这不又回到起始点,难道非要等到pdo都普及了再用pdo开发么,如果这样 就意味着我的php课程将教授学生一个已经开始淘汰的开发方式,学生学习完以后,几年内又要不得不放弃已经习惯的mySQL函数开发方式,再适应新的pdo开发方式。

 

有没有一个折中方案,既可以让学生学到新的pdo开发方式,在工作中又可以应对老得mySQL函数开发方式呢?那天学生问起 忽发奇想写个类,类的方法都是pdo的方式,然后将mySQL函数的操作 都封装到 这个类的方法里不就可以了么。

 

解决初衷 是开发是都采用pdo方式操作,如果需要mySQL函数方式 只要将连库的文件替换成mySQL函数连库代码,然后在后边加上这个类 并实例化对象为pdo的那个操作对象不就可以实现pdo方式改为mySQL函数方式了

 

pdo的增删改都一样的,代码如下:

 

 

require "./connDB.php" ; 

 

require ’./Deep.Class.MySQLfunction4PDO.php’; 

$db = new Deep_MySQLfunction4PDO(); 

 

$sql="insert into guestbook(guestName,guestDatetime)values(’lvhaipeng zhihuasoft".mt_rand(1,100)." ’,’".date(’Y-m-d H:i:s’)."’)"; 

 

//2 exec方法 

$count = $db->exec($sql); 

 

echo $count; 

?> 

查询代码如下:

 

 

require ’./connDB.php’; 

 

require ’./Deep.Class.MySQLfunction4PDO.php’; 

$db = new Deep_MySQLfunction4PDO(); 

 

//2 query查询 

$stmt = $db->query("SELECT * FROM guestbook" );  

 

// 1条记录 

// $row =$stmt->fetch(); 

//echo $row[’guestName’],"
"; 

 

while($row = $stmt->fetch()) 

echo $row[’guestName’],"
"; 

?> 

 

 

 

大家会发现我在连库文件后 ,添加了2行代码(当然工作时将这两行写在连库文件里刚好了)

 

 

require ’./Deep.Class.MySQLfunction4PDO.php’; 

$db = new Deep_MySQLfunction4PDO(); 

 

这样通过Deep_MySQLfunction4PDO类我就实现了不用更改现有的pdo代码,实现MySQL函数方式的操作了

 

Deep_MySQLfunction4PDO类文件代码如下:

 

 

/*

模仿pdo方式的一个mysql函数的操作类。

哈尔滨智华软件培训学校 吕海鹏2011-11-25 

 

调用:在mysql连库函数后调用

require ’./Deep.Class.MySQLfunction4PDO.php’;

$db = new Deep_MySQLfunction4PDO();

 

*/ 

 

// 仿PDO class 

class Deep_MySQLfunction4PDO{ 

 

//插入 删除 修改  

public function exec($sql){ 

@mysql_query( $sql ) or die("SQL语句执行错误!"); 

return mysql_affected_rows(); 

 

//查询 

public function query($sql){ 

$stmt=new Deep_MySQLfunction4PDO_stmt(); 

$stmt->query=@mysql_query( $sql ) or die("SQL语句执行错误!"); 

return $stmt; 

 

 

 

// 仿PDOStatement class 

class Deep_MySQLfunction4PDO_stmt{ 

var $query; 

public function fetch(){ 

return mysql_fetch_array($this->query); 

 

?> 

 

 

 

前一段时间课程比较多 今日周末有空 整理记录如上, 又有学生提出 仿pdo的类遇到查询 不用这个while($row =$stmt->fetch())用foreach( $stmt as $row)不行 我这改了改这个类实现了,这是那个代码写法有些古怪 待我有空再 整理 做这篇文章的后续说明吧

 

作者 吕海鹏

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478490.htmlTechArticlePDO显然将成为php的标准数据库操作方式。虽然国内的很多php空间或主机都已支持php5.2以上的版本了,但由于普及和技术上的原因还是有部分...
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

MySQL: Die einfache Datenverwaltung für Anfänger MySQL: Die einfache Datenverwaltung für Anfänger Apr 09, 2025 am 12:07 AM

MySQL ist für Anfänger geeignet, da es einfach zu installieren, leistungsfähig und einfach zu verwalten ist. 1. Einfache Installation und Konfiguration, geeignet für eine Vielzahl von Betriebssystemen. 2. Unterstützung grundlegender Vorgänge wie Erstellen von Datenbanken und Tabellen, Einfügen, Abfragen, Aktualisieren und Löschen von Daten. 3. Bereitstellung fortgeschrittener Funktionen wie Join Operations und Unterabfragen. 4. Die Leistung kann durch Indexierung, Abfrageoptimierung und Tabellenpartitionierung verbessert werden. 5. Backup-, Wiederherstellungs- und Sicherheitsmaßnahmen unterstützen, um die Datensicherheit und -konsistenz zu gewährleisten.

So erstellen Sie Navicat Premium So erstellen Sie Navicat Premium Apr 09, 2025 am 07:09 AM

Erstellen Sie eine Datenbank mit Navicat Premium: Stellen Sie eine Verbindung zum Datenbankserver her und geben Sie die Verbindungsparameter ein. Klicken Sie mit der rechten Maustaste auf den Server und wählen Sie Datenbank erstellen. Geben Sie den Namen der neuen Datenbank und den angegebenen Zeichensatz und die angegebene Kollektion ein. Stellen Sie eine Verbindung zur neuen Datenbank her und erstellen Sie die Tabelle im Objektbrowser. Klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie Daten einfügen, um die Daten einzufügen.

MySQL: Einfache Konzepte für einfaches Lernen MySQL: Einfache Konzepte für einfaches Lernen Apr 10, 2025 am 09:29 AM

MySQL ist ein Open Source Relational Database Management System. 1) Datenbank und Tabellen erstellen: Verwenden Sie die Befehle erstellte und creatEtable. 2) Grundlegende Vorgänge: Einfügen, aktualisieren, löschen und auswählen. 3) Fortgeschrittene Operationen: Join-, Unterabfrage- und Transaktionsverarbeitung. 4) Debugging -Fähigkeiten: Syntax, Datentyp und Berechtigungen überprüfen. 5) Optimierungsvorschläge: Verwenden Sie Indizes, vermeiden Sie ausgewählt* und verwenden Sie Transaktionen.

So führen Sie SQL in Navicat aus So führen Sie SQL in Navicat aus Apr 08, 2025 pm 11:42 PM

Schritte zur Durchführung von SQL in Navicat: Verbindung zur Datenbank herstellen. Erstellen Sie ein SQL -Editorfenster. Schreiben Sie SQL -Abfragen oder Skripte. Klicken Sie auf die Schaltfläche Ausführen, um eine Abfrage oder ein Skript auszuführen. Zeigen Sie die Ergebnisse an (wenn die Abfrage ausgeführt wird).

So erstellen Sie eine neue Verbindung zu MySQL in Navicat So erstellen Sie eine neue Verbindung zu MySQL in Navicat Apr 09, 2025 am 07:21 AM

Sie können eine neue MySQL -Verbindung in Navicat erstellen, indem Sie den Schritten folgen: Öffnen Sie die Anwendung und wählen Sie eine neue Verbindung (Strg N). Wählen Sie "MySQL" als Verbindungstyp. Geben Sie die Hostname/IP -Adresse, den Port, den Benutzernamen und das Passwort ein. (Optional) Konfigurieren Sie erweiterte Optionen. Speichern Sie die Verbindung und geben Sie den Verbindungsnamen ein.

Die Zukunft von PHP: Anpassungen und Innovationen Die Zukunft von PHP: Anpassungen und Innovationen Apr 11, 2025 am 12:01 AM

Die Zukunft von PHP wird erreicht, indem sich an neue Technologietrends angepasst und innovative Funktionen eingeführt werden: 1) Anpassung an Cloud Computing, Containerisierung und Microservice -Architekturen, Unterstützung von Docker und Kubernetes; 2) Einführung von JIT -Compilern und Aufzählungsarten zur Verbesserung der Leistung und der Datenverarbeitungseffizienz; 3) die Leistung kontinuierlich optimieren und Best Practices fördern.

Navicat stellt eine Verbindung zu Datenbankfehlercode und Lösung her Navicat stellt eine Verbindung zu Datenbankfehlercode und Lösung her Apr 08, 2025 pm 11:06 PM

Häufige Fehler und Lösungen beim Anschließen mit Datenbanken: Benutzername oder Kennwort (Fehler 1045) Firewall -Blocks -Verbindungsverbindung (Fehler 2003) Timeout (Fehler 10060) Die Verwendung von Socket -Verbindung kann nicht verwendet werden (Fehler 1042).

PHP: Stirbt es oder passt es sich einfach an? PHP: Stirbt es oder passt es sich einfach an? Apr 11, 2025 am 12:13 AM

PHP stirbt nicht, sondern sich ständig anpasst und weiterentwickelt. 1) PHP hat seit 1994 mehreren Versionen für die Version unterzogen, um sich an neue Technologietrends anzupassen. 2) Es wird derzeit in E-Commerce, Content-Management-Systemen und anderen Bereichen häufig verwendet. 3) PHP8 führt den JIT -Compiler und andere Funktionen ein, um die Leistung und Modernisierung zu verbessern. 4) Verwenden Sie Opcache und befolgen Sie die PSR-12-Standards, um die Leistung und die Codequalität zu optimieren.

See all articles