Ich habe ein sehr kompliziertes System, das MySQLi-Verbindungen jedes Mal öffnet und schließt, wenn es eine Abfrage durchführen wollte - von der es etwa 40.000 pro Operation ausführte (ineffizient, Ich kenne). Ich beschloss, die mysqli-Verbindung zwischen Funktionen zu übergeben, um diese Open-and-Close-Ineffizienz zu verhindern.PHP Warnung: print_r und debug_backtrace beim Übergeben einer mysqli-Verbindung
Mein Problem ist: Wenn eine Abfrage fehlschlägt, wollte ich mir die debug_backtrace()
, formatiert in einem leicht lesbaren Format (so verpacke ich es in print_r()
). Aus irgendeinem Grund bin immer ich jetzt eine PHP-Warnung, die sagt print_r(): Property access is not allowed yet in... on line XXX
wo Linie XXX einfach addNotification("Backtrace: ".print_r(debug_backtrace(), true), "debug");
irgendeinem Grund Gibt es liest, dass print_r()
nicht debug_backtrace()
mag, wenn einer der übergebenen Parameter in der Backtrace eine ist mysqli_connect
Objekt ? Fehlt der mysqli_connect eine toString-Funktion?
EDIT Nach ein wenig mehr Forschung fand ich habe, dass Sie print_r
oder var_dump
auf einem mysqli_connect
Objekt aufrufen können, aber wenn das Objekt mysqli_close
d bewirkt, dass es diese Warnung. Wenn es geschlossen ist und unset
ist es in Ordnung.
'mysqli_connect()' gibt nur ein Objekt zurück und es sind keine anderen Methoden damit verbunden. –