Das Rätsel von $_ENV verstehen: Warum es leer bleibt
Ihre Suche nach dem Geheimnis einer leeren $_ENV-Variable beginnt mit der Erkundung eine oft übersehene Einstellung in php.ini: variables_order. Standardmäßig ist diese Einstellung als „GPCS“ konfiguriert, was „E“ (ENV) nicht beinhaltet. Daher werden alle mit „SetEnv“ festgelegten Umgebungsvariablen zu Waisen und schaffen es nicht in $_ENV.
Um dieses Problem zu beheben, setzen Sie in php.ini einfach Variables_order auf „EGPCS“, was das fehlende „E. " Sobald diese Anpassung vorgenommen wurde, bleibt $_ENV nicht länger leer.
Darüber hinaus ist zu beachten, dass SetEnv in erster Linie $_SERVER und nicht $_ENV füllt. Das ist etwas irreführend, erklärt aber, warum sich Ihre Variable letztendlich in $_SERVER und nicht in $_ENV befand.
Schließlich dient die getenv-Funktion als zuverlässiger Ausweg. Es bleibt unempfindlich gegenüber den für $_ENV konfigurierten Einstellungen und bietet sogar Zugriff auf Umgebungsvariablen ohne Berücksichtigung der Groß-/Kleinschreibung.
Zusammenfassend lässt sich sagen, dass die Zauberformel zum Aufrufen Ihrer Umgebungsvariablen darin besteht, die Variable_order in php.ini zu ändern. Setzen Sie es auf „EGPCS“, und Ihr $_ENV wird nicht mehr leer sein. Denken Sie daran, getenv bleibt ein vertrauenswürdiger Begleiter, immer bereit, diese schwer fassbaren Umgebungsvariablen freizuschalten, ohne Berücksichtigung der Groß- und Kleinschreibung und ohne Sorgen.
Das obige ist der detaillierte Inhalt vonWarum ist meine Variable $_ENV leer und wie kann ich das beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!