Sie erhalten PHP notice
, weil Sie versuchen, auf einen Array-Index zuzugreifen, der nicht gesetzt ist.
Die obige Zeile explodiert die Zeichenfolge $line
mit =
und weist 0th
value in $var
und 1st
value in $value
zu. Das Problem tritt auf, wenn $line
eine Zeichenfolge ohne =
enthält.
Ich kenne das eine alte Frage und die Antwort ist ausreichend, "Sie erhalten PHP-Hinweis, weil Sie versuchen, einen Array-Index zuzugreifen, der nicht festgelegt ist." aber ich glaube, der beste Weg, um das Problem mit undefinierten Indizes zu überwinden, wenn es Fälle gibt, in denen Sie ein leeres Array mit dem list () / explode () - Combo verwenden können, ist das Setzen von Standardwerten mit Array-Pad.
Der Grund dafür ist, wenn Sie list () verwenden, kennen Sie die Anzahl der Variablen, die Sie vom Array haben wollen.
Zum Beispiel:
%Vor%Sie übergeben im Wesentlichen einen dritten Parameter, der angibt, wie viele Werte Sie für Ihre list () - Variablen benötigen (im obigen Beispiel zwei). Dann verwenden Sie array_pad, um einen Standardwert (im obigen Beispiel null) anzugeben, wenn das Array keinen Wert für die Listenvariable enthält.
nach Liste ($ var, $ value) php erwartet ein Array mit 2 Elementen, wenn die explode-Funktion kein Gleichheitszeichen findet, wird nur ein Array mit 1 Element zurückgegeben, das den undefinierten Offsetfehler, offset 1, verursacht ist das zweite Element eines Arrays, also hat wahrscheinlich eine Ihrer $ line-Variablen kein Gleichheitszeichen
Das Sprachkonstrukt list
wird verwendet, um einzelne Variablen aus einem Array zu erstellen. Wenn Ihr Array nicht genügend Elemente für die Anzahl der erwarteten Variablen im Aufruf list
enthält, erhalten Sie einen Fehler. In Ihrem Fall haben Sie 2 Variablen, so dass Sie ein Array mit 2 Elementen benötigen - Indizes 0 und 1.
Tags und Links php google-api google-webmaster-tools