Lihatlah kode ini:
$GET = array();
$key = 'one=1';
$rule = explode('=', $key);
/* array_push($GET, $rule[0] => $rule[1]); */
Saya mencari sesuatu seperti ini sehingga:
print_r($GET);
/* output: $GET[one => 1, two => 2, ...] */
Apakah ada fungsi untuk melakukan ini? (karena array_push
tidak akan bekerja dengan cara ini)
$arrayname = array('indexname1' => $value1, 'indexname2' => $value2);
akan menjadikannya sebagai satu-satunya item di$arrayname
. Jika Anda telah$arrayname
menetapkan dan ingin mempertahankan nilainya, coba$arrayname += $anotherarray
. Ingatlah bahwa semua kunci yang ada dalam array pertama akan ditimpa oleh yang kedua.$a = array("name" => "John"); $a += array("name" => "Tom");
maka$a["name"]
akan menjadi "John"Mendorong nilai ke dalam array secara otomatis membuat kunci numerik untuknya.
Saat menambahkan pasangan nilai kunci ke array, Anda sudah memiliki kunci, Anda tidak perlu membuatnya untuk Anda. Menekan kunci ke dalam array tidak masuk akal. Anda hanya bisa mengatur nilai kunci spesifik dalam array.
sumber
Anda dapat menggunakan operator gabungan (
+
) untuk menggabungkan array dan menyimpan kunci array yang ditambahkan. Sebagai contoh:Jadi kamu bisa melakukannya
$_GET += array('one' => 1);
.Ada informasi lebih lanjut tentang penggunaan operator serikat vs
array_merge
dalam dokumentasi di http://php.net/manual/en/function.array-merge.php .sumber
array_merge()
dan+
operator adalah ketika array 2 berisi nilai-nilai pada+
operator kunci yang sama mengabaikan nilai dari array kedua (tidak menimpa), juga tidakSaya ingin menambahkan jawaban saya ke tabel dan ini dia:
berharap ini akan membantu seseorang
sumber
Persis seperti yang dikatakan Pekka ...
Atau, Anda mungkin dapat menggunakan array_merge seperti ini jika Anda mau:
Tapi saya lebih suka metode Pekka mungkin karena jauh lebih sederhana.
sumber
Saya bertanya-tanya mengapa metode paling sederhana belum diposting:
sumber
array_merge
dan array union (+=
) berperilaku dengan cara yang berlawanan yaitu array_merge akan menghormati nilai dari array kedua dan union array akan menghormati nilai dari array pertama.Ini adalah solusi yang mungkin berguna bagi Anda
Ketika Anda membuangnya. Hasilnya seperti ini
sumber
Saya hanya mencari hal yang sama dan saya menyadari bahwa, sekali lagi, pemikiran saya berbeda karena saya jadul. Saya kembali ke BASIC dan PERL dan kadang-kadang saya lupa betapa mudahnya hal-hal di PHP.
Saya baru saja membuat fungsi ini untuk mengambil semua pengaturan dari database di mana mereka adalah 3 kolom. setkey, item (key) & value (value) dan tempatkan ke dalam array yang disebut pengaturan menggunakan kunci / nilai yang sama tanpa menggunakan push seperti di atas.
Cukup mudah & sederhana kok
Jadi seperti yang dijelaskan posting lainnya ... Di php tidak perlu "PUSH" sebuah array saat Anda menggunakan
Kunci => Nilai
DAN ... Tidak perlu lagi menentukan array.
$ array = array ();
Tidak perlu mendefinisikan atau mendorong. Cukup tetapkan $ array [$ key] = $ value; Ini secara otomatis merupakan dorongan dan deklarasi pada saat yang bersamaan.
Saya harus menambahkan bahwa untuk alasan keamanan, (P) oor (H) elpless (P) rotasi, maksud saya Pemrograman untuk Dummies, maksud saya PHP .... hehehe Saya sarankan Anda hanya menggunakan konsep ini untuk apa yang saya maksudkan. Metode lain apa pun bisa menjadi risiko keamanan. Di sana, buat penafian saya!
sumber
Ini berfungsi dengan baik. menciptakan kunci dengan nilainya dalam array
sumber
$arr
array yang ada .Agak terlambat tetapi jika Anda tidak keberatan dengan array bersarang, Anda bisa menggunakan pendekatan ini:
Untuk memperjelas, jika Anda menampilkan json_encode ($ main_array) yang akan terlihat seperti [{"Kunci": "10"}]
sumber
Agak aneh, tapi ini berhasil untukku
sumber
// mencetak array ['key1' => "value1", 'key2' => "value2"]
sumber
hai saya punya masalah yang sama saya menemukan solusi ini Anda harus menggunakan dua array kemudian menggabungkan keduanya
referensi: w3schools
sumber
Cara sederhana:
http://php.net/manual/de/function.parse-str.php
sumber
Untuk menambah ke posisi pertama dengan
key
danvalue
sumber
Untuk mendorong "kunci" dan "nilai" ke array yang ada, Anda dapat menggunakan
+=
operator pintasan.Lihat contoh yang sangat sederhana ini:
Hasilnya
print_r($GET)
adalah:sumber
Contoh 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);
Larik ([warna] => hijau, [0] => 2, [1] => 4, [2] => a, [3] => b, [bentuk] => trapesium, [4] => 4 ,)
sumber
Ini bekerja untuk saya.
sumber
$GET['one']=1
, kemudian gunakan nilai balik pernyataan itu (= 1, nilai), dan kemudian jalankanarray_push($GET, 1)
. Hasil = [0] -> 1, [satu] -> 1Saya menulis fungsi sederhana:
sehingga saya dapat "memberdayakan" elemen baru dengan mudah:
sumber
Ada beberapa contoh bagus yang sudah diberikan di sini. Hanya menambahkan contoh sederhana untuk mendorong elemen array asosiatif ke root indeks indeks numerik.
sumber
Saya biasanya melakukan ini:
sumber