Masalah:
Anda mempunyai rentetan yang mewakili tatasusunan bersarang struktur, dan anda perlu menukarnya menjadi tatasusunan sebenar. Sebagai contoh, diberikan rentetan berikut:
Main.Sub.SubOfSub
Dan nilai data:
SuperData
Anda mahu mencipta tatasusunan seperti ini:
Array ( [Main] => Array ( [Sub] => Array ( [SubOfSub] => SuperData ) ) )
Penyelesaian:
Untuk menukar rentetan menjadi tatasusunan, anda boleh menggunakan langkah berikut:
Berikut ialah coretan kod yang menunjukkan langkah-langkah:
<code class="php">$key = "Main.Sub.SubOfSub"; $target = array(); $value = "SuperData"; $path = explode('.', $key); $root = &$target; while(count($path) > 1) { $branch = array_shift($path); if (!isset($root[$branch])) { $root[$branch] = array(); } $root = &$root[$branch]; } $root[$path[0]] = $value;</code>
Coretan kod ini akan mencipta struktur tatasusunan yang diingini, dengan nilai data disimpan dalam kunci akhir.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan yang Mewakili Struktur Tatasusunan Bersarang menjadi Tatasusunan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!