dedlfix: Warning: mysqli_query(): Couldn't fetch mysqli in C:\... on line

Beitrag lesen

Tach!

zwar ohne ein übersichtliches <pre>
Ich hatte ein <pre> gesetzt, aber wohl am falschen Ort; wüsste auch jetzt nicht wo.

Direkt vor das var_dump(). Zu weit vorn notiert wird dessen Wirkung unter Umständen von anderen HTML-Elementen wieder aufgehoben. Man kann auch noch ein </pre> hinter das var_dump() setzen, aber das ist Luxus. Für den Zweck der Debugausgabe ist es meist unwichtig, wie der Rest der Seite dargestellt wird.

Nachtrag: Läuft PHP in seinem "artgerechten" Umfeld der Webseiten
Was meinst du mit "artgerecht"?

PHP wird vorwiegend als Sprache für Webanwendungen verwendet, und genau dafür wurde es erfunden. Man kann es aber auch für Shellscripts oder sogar Desktop-Anwendungen nehmen, aber das sind eher die Ausnahmen. "Artgerecht" bezieht sich auf die ursprüngliche Intention seiner Verwendung.

muss man sich üblicherweise nicht um das Schließen einer Verbindung kümmern.
Was ist denn mit der Empfehlung, die ich überall lese, man solle das besser tun? Auch alle Beispiele auf php.net schliessen die Verbindung mit mysqli_close($...).

Wenn keine Begründug dazusteht, ist solch eine Aussage mitunter nicht viel wert. Es wird eher der Ordnung halber gemacht, was geöffnet wurde muss wieder geschlossen werden. Im Prinzip richtig, aber wenn es eienn Automatismus dafür gibt, von dem ich weiß, dass er genauso arbeitet, wie ich und das System es brauchen, dann nutz ich den. Bringt mir ja auch Vorteile - weniger Code, weniger Fehlermöglichkeiten.

Es ist auch nicht notwendig und im PHP-Handbuch sogar empfohlen, am Dateiende das schließende ?> wegzulassen (nach einem nicht vorhandenen ?> können sich keine ungewollten Leerzeichen in die Ausgabe einschmuggeln), trotzdem steht es in allen Beispielen drin, und man sieht es überall in freier Wildbahn.

PHP beendet sowieso am Scriptende alles was noch offen ist
Wieso dann aber der Unterschied? (Das script schliesst die Verbindung am Ende automatisch vs. Das script schliesst die Verbindung am Ende auf Anweisung)

Man muss es zu Fuß schließen können, weil PHP ja auch langlaufend verwendet werden kann, und man dann eine Möglichkeit braucht, Ressourcen wieder freizugeben. Diesen Anwendungsfall hat man bei kurzlaufenden Webseiten in der Regel nicht, also kann man es dem Automatismus überlassen und muss nicht ein der Vollständigkeit gegebenes Beispiel übernehmen.

dedlfix.