Tach!
define("DB_PASS", "1$xgz7BD");
ist dieses Verhalten, für das automatische Ersetzen bzw. das Auflösen von Variablen innerhalb von Zeichenketten, in PHP nicht generell potentiell gefährlich?
Nein, generell nicht. Potentiell gefährlich ist Programmieren an sich auch. Dennoch sollte und kann man es nicht meiden.
Wer PHP programmieren will und diese wesentliche Eigenschaft von PHP (Perl hat das auch) nicht kennt, hat nicht genügend Grundlagen gelernt. Jedes Anfängertutorial beschreibt diese Eigenart.
Und selbst wer programmieren kann, das aber in anderen Sprachen, und sich dann so überschätzt, die Eigenarten einer anderen Sprache nicht lernen zu müssen, ist auch nicht gerade ein Held.
Kann man diese Funktionsweise per Konfiguration deaktivieren?
Nein, das wäre auch nicht sonderlich hilfreich beim Einsatz von nicht selbst geschriebenem PHP-Code. Aber man kann die Strings in einfache Anführungszeichen setzen, wenn man die Variablenauflösung nicht braucht - hat dann aber auch keine Sequenzen wie \n.
dedlfix.