Menukar Rentetan dengan Struktur Tatasusunan menjadi Tatasusunan
Soalan ini memberikan cabaran: menukar rentetan dengan struktur tatasusunan kepada tatasusunan sebenar . Rentetan yang diberikan mengikut struktur dipisahkan titik, mewakili tatasusunan bersarang. Untuk mengubah rentetan ini, kita boleh menggunakan fungsi terbina dalam PHP dan penaakulan logik.
Mula-mula, pecahkan rentetan kepada tatasusunan kunci menggunakan explode(). Kemudian, ulangi kekunci ini dan bina struktur tatasusunan yang dikehendaki. Jika kunci tidak wujud dalam tahap semasa tatasusunan, ciptakannya.
Contoh kod:
<code class="php">$string = "Main.Sub.SubOfSub"; $data = "SuperData"; $array = []; $path = explode('.', $string); $root = &$array; while (count($path) > 1) { $key = array_shift($path); if (!isset($root[$key])) $root[$key] = []; $root = &$root[$key]; } $root[$path[0]] = $data;</code>
Kod ini dengan cekap membina struktur tatasusunan yang dikehendaki daripada rentetan yang disediakan, membenarkan anda untuk mengakses nilai bersarang secara berstruktur.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan Dipisahkan Titik menjadi Tatasusunan Bersarang dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!