PHP Array von Funktion benutzen

PatrickB

Well-known member
ID: 137508
L
24 April 2006
496
13
So, habe wieder ne kleine Frage.

Und zwar habe ich eine Funktion die ein Array zurückgibt.
Kann ich - und wenn ja wie - von dem zurückgegebenen Array gleich einen bestimmten Wert ausgeben?

Beispiel:

PHP:
function myfunction() {
 ....
 return $array;
}
$value5 = myfunction()[5];
So sollte das sein, nur so wie ich das versuche gehts natürlich nicht.
 
Zuletzt bearbeitet:
Ich glaub ned. Weis das Array ner Variable zu und greif dann drauf zu.
 
Hä?! Nö :hö:
PHP:
function foo()
{
  return array('foo' => 0, 'bar' => 1);
}

$a = foo();
echo $a['foo'];
 
Was heißt "auch"?
Deine Lösung würde ja die Funktion ändern.
 
Ab PHP 5.3 ist sowas afair möglich. Habs grad nicht im Changelog gefunden, und auch kein PHP 5.3 installiert zum Testen, aber bin mir ziemlich sicher.
 
Na dann halt mit Umweg:
PHP:
function foo() { return array('bar' => 42); }
function a($array, $key) { return $array[$key]; }
echo a(foo(), 'bar');
 
Also wenn du es wirklich auf einer Zeile haben willst und die Array groesse und position bekannt ist dann kannst du auch folgendes machen:
PHP:
list($foo, $bar, ...) = myfunc()