Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menukar Rentetan Kunci=Nilai dengan Cekap kepada Tatasusunan Bersekutu dalam PHP?

Bagaimanakah Saya Boleh Menukar Rentetan Kunci=Nilai dengan Cekap kepada Tatasusunan Bersekutu dalam PHP?

Barbara Streisand
Lepaskan: 2024-12-03 22:58:11
asal
158 orang telah melayarinya

How Can I Efficiently Convert Key=Value Strings to Associative Arrays in PHP?

Penghuraian Rentetan Lanjutan: Menukar Rentetan Kunci=Nilai kepada Tatasusunan Bersekutu

Dalam senario tertentu, anda mungkin menghadapi situasi di mana anda perlu menghuraikan rentetan yang mengandungi pasangan nilai kunci ke dalam tatasusunan bersekutu. Kaedah biasa untuk mencapai ini melibatkan proses yang membosankan untuk membelah rentetan dengan koma, memotong elemen dan mendapatkan nilai atribut menggunakan pemisahan selanjutnya. Walau bagaimanapun, penyelesaian yang lebih cekap wujud dalam PHP menggunakan kuasa ungkapan biasa.

Pertimbangkan rentetan berikut:

key=value, key2=value2
Salin selepas log masuk

Untuk mengubahnya menjadi format tatasusunan bersekutu yang diingini:

"key" => "value",
"key2" => "value2"
Salin selepas log masuk

Anda boleh memanfaatkan ungkapan biasa seperti berikut:

$str = "key=value, key2=value2";
preg_match_all("/([^,= ]+)=([^,= ]+)/", $str, $r);
$result = array_combine($r[1], $r[2]);
var_dump($result);
Salin selepas log masuk

Penyelesaian ini menggunakan kaedah biasa ungkapan untuk mengekstrak pasangan nilai kunci. Tatasusunan yang terhasil kemudiannya boleh ditukar menjadi tatasusunan bersekutu menggunakan array_combine. Hasil akhir ialah tatasusunan bersekutu berstruktur seperti yang dimaksudkan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Rentetan Kunci=Nilai dengan Cekap kepada Tatasusunan Bersekutu dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan