Isih Dinamik dengan Array_multisort()
Apabila menggunakan array_multisort(), keperluan mungkin timbul untuk menukar pilihan pengisihan berdasarkan syarat tertentu. Pendekatan lalai melibatkan menghantar bilangan argumen statik dengan peraturan pengisihan yang telah ditetapkan. Walau bagaimanapun, untuk mencapai fleksibiliti dan dinamisme, penyelesaian alternatif diperlukan.
Untuk menampung bilangan peraturan pengisihan yang tidak diketahui, pertimbangkan untuk menggunakan call_user_func_array(). Fungsi ini membenarkan pemindahan array pembolehubah argumen kepada fungsi yang ditentukan pengguna. Dalam kes ini, ia boleh digunakan untuk mengubah suai tatasusunan $arraytosort dengan array_multisort().
Pertimbangkan contoh berikut:
<code class="php">$dynamicSort = "$sort1,SORT_ASC,$sort2,SORT_ASC,$sort3,SORT_ASC"; $param = array_merge(explode(",", $dynamicSort), array($arrayToSort)); call_user_func_array('array_multisort', $param);</code>
Pendekatan ini membina tatasusunan parameter secara dinamik berdasarkan yang ditentukan peraturan pengasingan. Panggilan seterusnya kepada call_user_func_array() kemudian menggunakan peraturan ini untuk mengisih tatasusunan $arraytosort.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Isih Dinamik dengan Call_user_func_array() dalam Array_multisort()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!