So nutzen Sie MySQLi aus einer separaten Klasse in PHP
Einführung
Upgrade von PHP Von Version 5.6 auf 7.0 ist ein Wechsel von MySQL zu MySQLi erforderlich, was zu Störungen bestehender Setups führen kann. Dieser Artikel befasst sich mit einem Problem, das beim Versuch auftritt, von einer separaten Klasse aus auf eine MySQLi-Verbindung zuzugreifen.
Problem
Ein Programmierer hat versucht, auf eine MySQLi-Verbindung zuzugreifen, die in einer Datenbankklasse erstellt wurde von einer API-Klasse, beim Aufrufen der Verbindung ist ein interner Serverfehler (500) aufgetreten. Das Problem wurde jedoch durch eine direkte Verbindung innerhalb der API-Klasse behoben.
Lösung
Mehrere empfohlene Änderungen können das Problem beheben:
Beispielcode:
database.php:
<code class="php">mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); $db = new mysqli("localhost", "DBUserName", "UserPassword", "SelectedDB"); $db->set_charset('utf8mb4');</code>
myapi.php:
<code class="php">class MyAPI { protected $db; public function __construct($db, $request_uri, $postData, $origin) { $this->db = $db; } }</code>
app.php:
<code class="php">require 'database.php'; require 'myapi.php'; $api = new MyAPI($db, $request_uri, $postData, $origin);</code>
Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen unter Berücksichtigung des Fragenformats und des Schwerpunkts auf dem MySQLi-Problem: **Direkt und prägnant:** * **Warum kann ich nicht von einer separaten Klasse aus auf meine MySQLi-Verbindung zugreifen?** * **MyS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!