array aus function ausgeben

pangu

Angesehenes Mitglied
wie kann ich ein in einer function erzeugtes array außerhalb der function ausgeben?

nichtfunktionales beispiel:

Code:
function xyz($param) 
{
$x[]=$param;
$X[]="s";
$X[]="t";
 return $x;
}

$xarray=xyz(te);

$anzahl=count ($xarray);
for ($i=0; $i<$anzahl-1;$i++)
{
echo $xarray[$i];
}
 
edit: fehler gerade selbst gefunden:
hatte bei:
$X[]="s";
$X[]="t";
das $X aus versehen jeweils groß geschrieben..
wink.gif


-> kann gelöscht werden, sorry&thx
 
doch noch ne frage zu Funktionen:
gibt es zu >return $variable;< noch eine alternative um eine variable außerhalb der funktion noch zu lesen, ohne die funktion zu verlassen:

habe eine rekursive funktion, die bei jedem durchlauf, der arrayvariable $test einen neuen wert hinzufügt.
$test[]="neu";

-> wie kann ich diese variable jetzt am ENDE aller durchläufe außerhalb der funktion auslesen?
 
Ich verstand nicht was Du sagtest. Gibts das auch in Deutsch oder PHP?

Evtl. willst Du das.
CODE
class xyz
{
var $test = array();

function rec ()
{
$this->test[] = "Gurke";
if ()
return $this->rec();
}
}

$t = new xyz();
$t->rec();
var_dump($t->test);

 
möchte sowas in der art (schema):

function xabfrage($p1, $p2)
{
$xyz[]=$p1+p2;

$x=$p1+1; $y=$p2+2;
xabfrage($x, $y); //rekursiver aufrurf
}

xabfrage ($a,$b);//erster aufruf

$i=2;
echo $xyz[$i]; //variable außerhalb der funktion lesen

-> die varibale $xyz soll also bei jedem functionsdurchlauf weiter gefüllt werden (wobei die alten einträge erhalten bleiben sollen). und nach dem furchlauf der rekursiven funktion möchte ich die varibale $xyz noch lesen können.
 
Nun... würde ich versuchen so etwas iterativ zu lösen, aber wenigsten darf ich vermuten richtig geraten zu haben, weshalb ich Dich bitte, Dich an meinem obigen Post zu orientieren.

PS: Ausserdem immer Rekursionsabbruchbedingung einbauen, sonst läuft das bis wir alles verbraucht haben, was auf der Welt Strom macht...
 
ok thx.

btw: warum funktioniert das nicht (variable global verfügbar):

CODE
global $xyz;

function xabfrage($p1, $p2)
{
$xyz[]=$p1+p2;

$x=$p1+1; $y=$p2+2;

if () {break;}

xabfrage($x, $y); //rekursiver aufrurf
}

xabfrage ($a,$b);//erster aufruf

$i=2;
echo $xyz[$i]; //variable außerhalb der funktion lesen


?



QUOTE
PS: Ausserdem immer Rekursionsabbruchbedingung einbauen, sonst läuft das bis wir alles verbraucht haben, was auf der Welt Strom macht...

ja, wäre nicht so gut..
wink.gif
 
habs jetzt hinbekommen: (global innerhalb der funktion)

CODE
function xabfrage($p1, $p2)
{
global $xyz;
$xyz[]=$p1+p2;

$x=$p1+1; $y=$p2+2;

if ( gfhsgfghfe ) {break;}

xabfrage($x, $y); //rekursiver aufrurf
}

xabfrage ($a,$b);//erster aufruf

$i=2;
echo $xyz[$i]; //variable außerhalb der funktion lesen

 
Zurück
Oben