Menukar Notasi Titik kepada Tatasusunan Berbilang Dimensi dalam PHP
Dalam PHP, adalah mungkin untuk meniru struktur tatasusunan berbilang dimensi menggunakan tatatanda titik seperti "ini .itu.lain". Walau bagaimanapun, ini boleh menjadi menyusahkan untuk mengurus dan mengedit. Untuk menangani perkara ini, kaedah dicari untuk menukar tatatanda titik kepada tatasusunan berbilang dimensi.
Penyelesaian yang dicadangkan menggunakan fungsi berikut:
function assignArrayByPath(&$arr, $path, $value, $separator='.') { $keys = explode($separator, $path); foreach ($keys as $key) { $arr = &$arr[$key]; } $arr = $value; }
Fungsi ini berulang melalui kekunci yang dipisahkan oleh titik, mencipta sebarang kunci yang hilang di sepanjang jalan dan akhirnya memberikan nilai yang diingini.
Sebagai contoh, titik berikut tatatanda:
s1.t1.column.1 = size:33%
Boleh ditukar kepada tatasusunan berbilang dimensi seperti:
assignArrayByPath($source, 's1.t1.column.1', 'size:33%'); echo $source['s1']['t1']['column']['1']; // Output: size:33%
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Rentetan Notasi Titik PHP kepada Tatasusunan Berbilang Dimensi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!