| 

.NET C# Java Javascript Exception

3
Ich werd noch wahnsinnig. Ich hab eine Variable in meinem Script, die auch in einer Funktion oder einer Methode zur Verfügung stehen sollte. Aber die Variable ist leer.
<?php
$a = "DSDS";

function GetValue()
{
echo $a;
}

class MyClass
{
function GetValue()
{
echo $a;
}
}

GetValue();
$myclass = new MyClass();
$myclass->GetValue();

Beide Funktionen geben nichts raus? Dabei ist $a doch vorher und im übergeordneten Programm definiert.
News:
16.03.2011
Steffen B. 31 2
3 Antworten
3
Siehe Geltungsbereich von Variablen. Eine Möglichkeit ist demnach bspw.:

function GetValue()
{
echo $GLOBALS["a"];
}
16.03.2011
Al 66 1
0
Funktionen habe ihren eigenen scope. Du kannst mit globals ... besser nicht! Übergib die Variable am besten als Parameter.
16.03.2011
blackdog9 113 1 5
Es gibt durchaus Anwendungsfälle für globale Variablen.
DaSpors 17.03.2011
0
Alternativ zu ALs Antwort geht auch das hier:
function GetValue()
{
global $a;
echo $a;
}

Das ist unter Umständen etwas lesbarer.
17.03.2011
DaSpors 4,2k 2 8

Stelle deine Php-Frage jetzt!