Menyesuaikan Parameter URL untuk Menampung Tatasusunan
Pembangun sering menghadapi cabaran untuk menghantar tatasusunan sebagai parameter URL. Satu pendekatan yang biasa dicuba melibatkan penugasan tatasusunan kepada parameter URL dengan cara berikut:
$aValues = array(); $url = 'http://www.example.com?aParam='.$aValues;
Walau bagaimanapun, kaedah ini tidak berkesan kerana ia memperuntukkan keseluruhan tatasusunan kepada satu parameter URL, yang membawa kepada URL yang tidak sah.
Satu lagi percubaan penyelesaian ialah:
$url = 'http://www.example.com?aParam[]='.$aValues;
Walaupun pendekatan ini dipertingkatkan sedikit, ia juga mengakibatkan URL yang tidak sah.
Menentukan Kaedah Optimum
Penyelesaian ideal untuk masalah ini ialah menggunakan fungsi http_build_query(). Fungsi ini menerima parameter pertanyaan dalam bentuk tatasusunan bersekutu:
$data = array( 1, 4, 'a' => 'b', 'c' => 'd' ); $query = http_build_query(array('aParam' => $data));
URL yang terhasil akan mematuhi format berikut:
aParam%5B0%5D=1&aParam%5B1%5D=4&aParam%5Ba%5D=b&aParam%5Bc%5D=d
Format ini diterjemahkan kepada: aParam[0] =1&aParam[1]=4&aParam[a]=b&aParam[c]=d, menghantar tatasusunan secara berkesan sebagai dimaksudkan.
Fungsi http_build_query() memastikan pelarian yang betul dengan menukar aksara seperti [ dan ] kepada persamaan selamat URL mereka, memastikan URL yang terhasil adalah sah dan berfungsi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meluluskan Tatasusunan dengan Benar sebagai Parameter URL dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!