Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich auf Array-Elemente zugreifen, die von einer Funktion in PHP zurückgegeben werden?

Wie kann ich auf Array-Elemente zugreifen, die von einer Funktion in PHP zurückgegeben werden?

Barbara Streisand
Barbara StreisandOriginal
2024-12-09 19:19:17354Durchsuche

How Can I Access Array Elements Returned by a Function in PHP?

Zugriff auf von Funktionen zurückgegebene Arrays in PHP

Stellen Sie sich das Szenario vor, in dem Sie über eine Vorlagen-Engine verfügen, die Code basierend auf Ihren angegebenen Speicherorten einfügt. Um eine bestimmte Bedingung zu testen, haben Sie eine Funktion erstellt:

myfunction() { return '($this->data["a"]["b"] ? true : false)'; }

Der private Charakter von $this->data stellt jedoch eine Herausforderung dar, da er in bestimmten Kontexten nicht zugänglich ist.

Um dieses Problem zu beheben, wird normalerweise getData() verwendet, aber in diesem Fall funktioniert es nicht. Der folgende Ansatz schlägt ebenfalls fehl:

$this->getData()['a']['b']

Außerdem stellt die Zuweisung des Werts an eine Variable keine praktikable Lösung dar.

Lösung

PHP 5.4 und höher bieten einen direkten Ansatz:

getSomeArray()[2]

Für PHP 5.3 oder früher ein temporärer Variable kann verwendet werden:

$temp = getSomeArray();
$temp[2]

Mit dieser Methode können Sie auf die von der Funktion zurückgegebenen Array-Elemente zugreifen, ohne auf die Einschränkungen zu stoßen, die durch die private Natur des Arrays entstehen.

Das obige ist der detaillierte Inhalt vonWie kann ich auf Array-Elemente zugreifen, die von einer Funktion in PHP zurückgegeben werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn