Schauen Sie sich diesen Code an:
$GET = array();
$key = 'one=1';
$rule = explode('=', $key);
/* array_push($GET, $rule[0] => $rule[1]); */
Ich suche so etwas, damit:
print_r($GET);
/* output: $GET[one => 1, two => 2, ...] */
Gibt es eine Funktion, um dies zu tun? (weil array_push
es so nicht funktioniert)
$arrayname = array('indexname1' => $value1, 'indexname2' => $value2);
würde sie als die einzigen Elemente in festlegen$arrayname
. Wenn Sie die$arrayname
Werte bereits festgelegt haben und beibehalten möchten, versuchen Sie es$arrayname += $anotherarray
. Beachten Sie, dass alle vorhandenen Schlüssel im ersten Array vom zweiten überschrieben werden.$a = array("name" => "John"); $a += array("name" => "Tom");
dann$a["name"]
wird „John“Wenn Sie einen Wert in ein Array verschieben, wird automatisch ein numerischer Schlüssel dafür erstellt.
Wenn Sie einem Array ein Schlüssel-Wert-Paar hinzufügen, haben Sie bereits den Schlüssel. Sie müssen keinen für Sie erstellen. Das Drücken einer Taste in ein Array macht keinen Sinn. Sie können nur den Wert des spezifischen Schlüssels im Array festlegen.
quelle
Mit dem union-Operator (
+
) können Sie Arrays kombinieren und die Schlüssel des hinzugefügten Arrays behalten. Zum Beispiel:Also könntest du es tun
$_GET += array('one' => 1);
.Weitere Informationen zur Verwendung des Gewerkschaftsoperators finden Sie
array_merge
in der Dokumentation unter http://php.net/manual/en/function.array-merge.php .quelle
array_merge()
und+
operator besteht darin, dass die+
beiden Arrays Werte für denselben Schlüsseloperator enthalten, den Wert aus dem zweiten Array ignorieren (nicht überschreiben) und die numerischen Schlüssel nicht neu nummerieren / neu indizieren ...Ich möchte meine Antwort zur Tabelle hinzufügen und hier ist es:
hoffe, dass dies jemandem helfen wird
quelle
Genau das, was Pekka gesagt hat ...
Alternativ können Sie array_merge wahrscheinlich wie folgt verwenden, wenn Sie möchten:
Aber ich würde Pekkas Methode wahrscheinlich vorziehen, da sie viel einfacher ist.
quelle
Ich frage mich, warum die einfachste Methode noch nicht veröffentlicht wurde:
quelle
array_merge
und sich Array Union (+=
) in umgekehrter Weise verhält, respektiert Array_merge den Wert des zweiten Arrays und Array Union den Wert des ersten Arrays.Dies ist die Lösung, die für u nützlich sein kann
Wenn Sie es entsorgen. Das Ergebnis ist so
quelle
Ich habe nur nach dem gleichen gesucht und festgestellt, dass ich wieder anders denke, weil ich alte Schule bin. Ich gehe den ganzen Weg zurück zu BASIC und PERL und manchmal vergesse ich, wie einfach die Dinge in PHP wirklich sind.
Ich habe gerade diese Funktion gemacht, um alle Einstellungen aus der Datenbank zu übernehmen, in der es sich um 3 Spalten handelt. setkey, item (key) & value (value) und platzieren Sie sie mit demselben Schlüssel / Wert in einem Array namens settings, ohne Push wie oben zu verwenden.
Wirklich ziemlich einfach
So wie die anderen Beiträge erklären ... In PHP ist es nicht erforderlich, ein Array zu "DRÜCKEN", wenn Sie verwenden
Schlüssel => Wert
UND ... Es ist auch nicht erforderlich, zuerst das Array zu definieren.
$ array = array ();
Sie müssen nicht definieren oder pushen. Weisen Sie einfach $ array [$ key] = $ value zu. Es ist automatisch ein Push und eine Erklärung zugleich.
Ich muss hinzufügen, dass aus Sicherheitsgründen, (P) oder (H) elpless (P) Rotation, ich meine Programmierung für Dummies, ich meine PHP ... hehehe, ich schlage vor, dass Sie dieses Konzept nur für das verwenden, was ich beabsichtigt habe. Jede andere Methode kann ein Sicherheitsrisiko darstellen. Dort machte mein Haftungsausschluss!
quelle
Das funktioniert gut. Erstellt den Schlüssel mit seinem Wert im Array
quelle
$arr
Arrays verschoben.Ein bisschen spät, aber wenn Ihnen ein verschachteltes Array nichts ausmacht, können Sie diesen Ansatz wählen:
Wenn Sie json_encode ($ main_array) ausgeben, sieht dies zur Verdeutlichung wie folgt aus: [{"Key": "10"}]
quelle
Ein bisschen komisch, aber das hat bei mir funktioniert
quelle
// druckt Array ['key1' => "value1", 'key2' => "value2"]
quelle
Hallo, ich hatte das gleiche Problem. Ich finde diese Lösung. Du solltest zwei Arrays verwenden und dann beide kombinieren
Referenz: w3schools
quelle
Der einfache Weg:
http://php.net/manual/de/function.parse-str.php
quelle
Zum Hinzufügen zur ersten Position mit
key
undvalue
quelle
Um einen "Schlüssel" und einen "Wert" in ein vorhandenes Array zu drücken, können Sie den
+=
Verknüpfungsoperator verwenden.Siehe dieses sehr einfache Beispiel:
Das Ergebnis von
print_r($GET)
wird sein:quelle
Beispiel array_merge () ....
$array1 = array("color" => "red", 2, 4); $array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4); $result = array_merge($array1, $array2); print_r($result);
Array ([Farbe] => Grün, [0] => 2, [1] => 4, [2] => a, [3] => b, [Form] => Trapez, [4] => 4 ,)
quelle
Für mich geht das.
quelle
$GET['one']=1
, verwendet dann den Rückgabewert dieser Anweisung (= 1, der r-Wert) und wird dann ausgeführtarray_push($GET, 1)
. Ergebnis = [0] -> 1, [eins] -> 1Ich habe eine einfache Funktion geschrieben:
damit ich leicht neue Elemente "uppsert" kann:
quelle
Es gibt hier bereits einige großartige Beispiele. Fügen Sie einfach ein einfaches Beispiel hinzu, um assoziative Array-Elemente in den numerischen Index des Stammindex zu verschieben.
quelle
Normalerweise mache ich das:
quelle