Wie getParams array-Typ
In Magento, wie wir in der Regel verwendet man param
http://magento.com/customer/account/view/id/122
können wir die param von
$x = $this->getRequest()->getParam('id');
echo $x; //value is 122
nun, soweit ich weiß, die $x nur, um eine Zeichenfolge aus der param.
gibt es eine Möglichkeit, um $x als array?
als Beispiel:
Array
(
[0] => 122
[1] => 233
)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich fürchte, derzeit ist es nicht möglich für Zend Framework oder Magento: array param des zend-url.
Hier ist ein bug gemeldet auf die übergabe get-variable als array.
Beispiel:
Wenn du meinst, alle Parameter als ein array (vielleicht ein varien-Objekt):
können Sie auch mit Klammern auf Ihre-query params, wie http://magento.com/customer/account/view/?id%5B%5D=123&id%5B%5D=456
dann nach der Ausführung des folgenden, $x ein array ist.
Mein Vorschlag, wenn Sie wollen, Eingaben von Besuchern als array, dann statt der übergabe in der URL als GET-Parametern übergeben, die als POST-Variablen.
Dann $_POST wird haben alle und Sie können $params = $this->getRequest()->getParams();
Mit Zend Framework 1.12, dies ist möglich mit nur die Methode getParam(). Beachten Sie das Ergebnis von getParam() ist NULL für keine der verfügbaren Schlüssel, ein string 1 Schlüssel, und ein array für mehrere Schlüssel:
Keine 'id' value
Single 'id' value
Mehrere 'id' die Werte:
Dies könnte problematisch sein, wenn Sie immer damit rechnen, dass ein string in den code, und für einige Grund mehr Werte sind in der url: In einigen Fällen können Sie zum Beispiel in ausführen den Fehler "Arrays zu-string-Konvertierung". Hier sind einige tricks, um solche Fehler zu vermeiden, um sicherzustellen, dass Sie immer die Art von Ergebnis Sie brauchen, von getParam():
Wenn Sie möchten, das $id, zu einer array (oder NULL, wenn der Parameter nicht gesetzt ist)
Wenn Sie immer wollen, das $id, zu einer array (kein NULL-Wert, falls nicht gesetzt, wird nur leeres array):
Gleiche wie oben in eine Zeile (keine NULL, ist immer array):
Wenn Sie möchten, das $id, zu einer string (die ersten verfügbaren Wert, hält NULL intakt)
Wenn Sie möchten, das $id, zu einer string (die letzten verfügbaren Wert, hält NULL intakt)
Vielleicht gibt es kürzere/bessere Wege, diese zu beheben "Antwort-Typen" von getParam, aber wenn Sie gehen, um die oben genannten Skripte, es könnte sauberer sein, um erstellen Sie eine andere Methode, für die es (extended Helfer oder so).