Ich gebe zu, dass diese Frage etwas vage sein wird, aber ich werde versuchen zu erklären, was ich mit ein paar Beispielen erreichen möchte. Ich habe etwas PHP-Code, der eine Reihe von Variablen aus der MySQL-Datenbank lädt, einige Deklarationen enthält, einige Funktionen, um schnell HTML-Code auszugeben usw. Allerdings würde ich gerne all diese Dinge tun, bevor etwas an den Client gesendet wird.
Also tue ich:
%Vor%Das ist alles in Ordnung und ok, bis ich einen Fehler bekomme. Das Echo wird nicht im Browser angezeigt, weil es vor allem HTML ist ... Also habe ich geändert:
%Vor%Jetzt kann ich tatsächlich Fehler sehen, was gut ist. Aber jetzt tritt das Problem auf, dass ich im Header oder Scripts nicht auf Variablen zugreifen kann, die später im neu erstellten error_block geladen werden.
Ich mag es wirklich nicht, den Code in der error_clock auf einige über dem HTML-Dokument und einige in den error_block aufzuteilen. Und ich möchte auch nicht die Die () -Funktion von PHP verwenden, die die Ausführung abrupt beendet.
Jeder kann seine 2 Cent zu diesem Thema geben? Danke.
Wenn Sie nach einer alternativen Lösung suchen, habe ich eine für Sie. Was ich gerne mache, ist die Logik vor dem DOCTYPE
Dann unten im Dokument habe ich ein div nur für den Fehler (Danke @Dave für die Eingabe)
%Vor% Dieses div wird nicht angezeigt, wenn kein Fehler vorliegt (dh $error
ist leer) und es erleichtert Ihnen, die Fehlermeldung so zu formatieren, wie Sie möchten
Wenn Sie sich etwas einfallen lassen möchten, können Sie jQuery verwenden, um das div zu verstecken / anzuzeigen, damit der Fehler nicht bestehen bleibt.
%Vor%Was oft vergessen wird, ist, dass PHP im Wesentlichen eine INLINE-Programmiersprache ist. Das bedeutet, dass PHP vom Server verarbeitet wird, während der Server die Seite liest und damit in Blöcke aufgeteilt wird. Kürzlich wurde OOP (Object Oriented Programming) in PHP eingeführt, um es flexibler zu machen.
Also würde ich bei dieser Information in diesem Fall den OOP-Pfad nehmen und so etwas tun wie:
%Vor%Indem Sie mit Funktionen schreiben, können Sie Ihre Entwicklungszeit verkürzen und den Großteil Ihres Codes gruppieren, indem Sie einfach das anrufen, was Sie brauchen, wenn Sie es brauchen.
Eine andere Möglichkeit, Ihre Fehlerklasse (n) / Funktionen zur Unterstützung der Antwortzeit des Servers zu deklarieren, ist etwas wie:
%Vor%Dies schließt nur die Fehlerklasse (n) / Funktionen ein, wenn ein Fehler auftritt.
Denken Sie nur daran, wenn Sie PHP mit OOP-Techniken wie diesem schreiben, dass der Server länger braucht, um das Skript zu verarbeiten, als wenn Sie inline schreiben. Der größte Vorteil einer OOP-Basis ist, dass Sie Ihre Entwicklungszeit reduzieren und, wenn Sie es richtig gemacht haben, wird es die Verwaltung künftiger Aktualisierungen Ihres Skripts erleichtern.