Akses Tatasusunan Dinamik dengan Indeks Rentetan
Pertimbangkan struktur tatasusunan seperti berikut:
Array ( [0] => Array ( [Data] => Array ( [id] => 1 [title] => Manager [name] => John Smith ) ) [1] => Array ( [Data] => Array ( [id] => 1 [title] => Clerk [name] => ( [first] => Jane [last] => Smith ) ) ) )
Keperluan adalah untuk reka fungsi yang menerima rentetan yang mewakili laluan indeks tatasusunan dan mengembalikan nilai tatasusunan yang sepadan. Sebagai contoh, laluan indeks "0['nama']" akan mengembalikan "Pengurus," manakala "1'nama'" akan menghasilkan "Jane." Bilangan tahap tatasusunan dalam laluan indeks boleh berbeza-beza.
Penyelesaian
Untuk mencapai ini, gunakan fungsi explode() untuk memisahkan laluan indeks rentetan kepada tatasusunan daripada kunci individu. Lelaran melalui kekunci menggunakan gelung foreach, menavigasi tahap tatasusunan dengan sewajarnya. Nilai yang terhasil boleh diambil dan diberikan kepada pembolehubah. Berikut ialah pelaksanaan praktikal:
function getArrayValue($indexPath, $arrayToAccess) { $paths = explode(":", $indexPath); $itens = $arrayToAccess; foreach($paths as $ndx){ $itens = $itens[$ndx]; } return $itens; }
Dengan menggunakan fungsi ini, anda boleh mengakses nilai tatasusunan secara dinamik menggunakan rentetan sebagai laluan indeks, menyediakan kaedah yang mudah dan fleksibel untuk mendapatkan data.
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Nilai Tatasusunan Secara Dinamik Menggunakan Indeks Rentetan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!