Variablen globalisieren (außerhalb einer Funktion)...

Daxi

Erfahrenes Mitglied
Hallo.

Ich habe ein Community programmiert (oder besser gesagt: ich bin noch dabei).
Dazu verwende ich eine config.php, in der ein Array $_CONFIG die Konfigurationen enthält.

Ich will diese jetzt globalisieren, dass sie wie $_GET, $_REQUEST, $_POST etc. behandelt wird.

Leider funktioniert das nicht:
PHP:
<?php
$_CONFIG = Array(
 "DefaultStyle" => "standard");

global $_CONFIG;

function test() {
 echo $_CONFIG["DefaultStyle"];
}
test();
?>

Das Script bringt so kein Ausgabe.

Wie ist es möglich bzw. ist es möglich diesen Effekt mit einer Variable zu erreichen?

Ich möchte das aber nicht verwenden:
PHP:
<?php
$_CONFIG = Array(
 "DefaultStyle" => "standard");

function test() {
 global $_CONFIG;
 echo $_CONFIG["DefaultStyle"];
}
test();
?>
Sonst muss ich in jeder Funktion darauf achten, dass diese verfügbar ist.
Sie soll aber generell überall verfügbar sein.

Vielen Dank für eure Hilfe.
 
Zwar nicht ganz das, was ich gesucht habe...
Habe mittlerweile auf einer anderen Seite gelesen, dass diese Variablen "superglobal" genannt werden.
Solche "superglobalen" Variablen sollen auch nicht durch das Script erstellt werden können.
Wer weiß da näheres darüber?
Stimmt das?
 
Nein superglobale variablen kann man zumindest bist jetzt nich mit einem script erstellen, das geht im moment nur auf C ebene und muss soweit ich informiert bin während der initalisierung von PHP geschehen.
 
Ja ich vermute das auch mal.
Da wirst wahrscheinlich die Änderungen nur in der PHP.ini machen können!
Und auf Webserver kommst du da in der Regel nicht ran.
Außer du hast gleich nen ganzen Server gemietet, wo du selbst Herr über die draufgespielte Software bist.
 
Nein das geht nichtmal in der PHP.ini

daszu muss man wenn ich das richtig im kopf hab die PHP startup routine umprogrammieren, is schon lange aus das ich mit dem PHP source rumgespielt hab weiß net sicher. Is es in der startup routine oder in der zend engine. Ich glaub schon in der startup routine.

Auf jedenfall mit der php.ini gehts definitiv nicht.

Ich sagte doch... auf C ebene (= quellcode von PHP bearbeiten).
 
Danke für eure Hilfe.

Leider kommt das mit dem Code bearbeiten nicht in Frage.
Kann weder C, noch habe ich einen eigenen Server und somit Zugriff auf die Files :( ...

Trotzdem Danke!
 
Zurück