Heim >Backend-Entwicklung >PHP-Tutorial >Wie gehe ich mit dem Fehler „Versuch, auf den Array-Offset für einen Wert vom Typ Null zuzugreifen' in PHP um?

Wie gehe ich mit dem Fehler „Versuch, auf den Array-Offset für einen Wert vom Typ Null zuzugreifen' in PHP um?

Barbara Streisand
Barbara StreisandOriginal
2024-11-14 19:19:02907Durchsuche

How to Handle

Fehler „Versuch, auf den Array-Offset für einen Wert vom Typ Null zuzugreifen“ in PHP

Dieser Fehler tritt beim Datenbankabruf auf, wenn die Datenbank „Nein“ zurückgibt übereinstimmende Zeilen oder die Ergebnismenge ist erschöpft. Datenbankfunktionen geben Null oder ein leeres Array zurück, wenn keine passenden Datensätze vorhanden sind.

Um das Problem zu beheben, überprüfen Sie die Richtigkeit des Werts oder bestätigen Sie die Existenz des Schlüssels, auf den Sie zugreifen möchten. Betrachten Sie das folgende Beispiel:

$monday_lectures = "SELECT * from lectures where lecture_time = '11am to 1pm' and lecture_day = 'firday'";
$result_11to1 = mysqli_query($con, $monday_lectures);
$m11to1 = mysqli_fetch_array($result_11to1);

if ($m11to1 && $m11to1["lecture_day"] == !'') {
    echo "<td>".$m11to1["lecture_name"]."</td>";
} else {
    echo "<td> no class</td>";
}

Für einen einzelnen Wert aus dem Ergebnisarray können Sie einen Standardwert angeben, falls das Ergebnis leer ist:

$monday_lectures = "SELECT * from lectures where lecture_time = '11am to 1pm' and lecture_day = 'firday'";
$result_11to1 = mysqli_query($con, $monday_lectures);
$m11to1 = mysqli_fetch_array($result_11to1);
$lecture = $m11to1["lecture_day"] ?? null;

Der gleiche Ansatz gilt für PDO :

$monday_lectures = $pdo->prepare("SELECT * from lectures where lecture_time = '11am to 1pm' and lecture_day = 'firday'");
$monday_lectures->execute();
$m11to1 = $monday_lectures->fetch();
$lecture = $m11to1["lecture_day"] ?? null;

Das obige ist der detaillierte Inhalt vonWie gehe ich mit dem Fehler „Versuch, auf den Array-Offset für einen Wert vom Typ Null zuzugreifen' in PHP um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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