Dalam PHP, kadangkala kita perlu menukar data kepada tatasusunan rentetan, atau menukar rentetan menjadi tatasusunan. Dalam artikel ini, kami akan menerangkan cara melaksanakan operasi ini dalam PHP.
Tukar data kepada tatasusunan rentetan
Biasanya, apabila kita perlu menukar data kepada tatasusunan rentetan, ia adalah kerana kita ingin menyimpan data dalam pangkalan data atau fail teks. Berikut ialah contoh menukar data kepada tatasusunan rentetan:
$data = array( 'name' => 'Tom', 'age' => 25, 'gender' => 'male' ); $string = json_encode($data); $array = str_split($string); print_r($array);
Dalam contoh di atas, kita mula-mula mentakrifkan tatasusunan bersekutu $data
dan kemudian gunakan fungsi json_encode()
untuk menukarnya kepada Format JSON rentetan. Seterusnya, kami menggunakan fungsi str_split()
untuk menukar rentetan ini kepada tatasusunan rentetan $array
.
Hasil output adalah seperti berikut:
Array ( [0] => { [1] => " [2] => n [3] => a [4] => m [5] => e [6] => " [7] => : [8] => " [9] => T [10] => o [11] => m [12] => " [13] => , [14] => " [15] => a [16] => g [17] => e [18] => " [19] => : [20] => 2 [21] => 5 [22] => , [23] => " [24] => g [25] => e [26] => n [27] => d [28] => e [29] => r [30] => " [31] => : [32] => " [33] => m [34] => a [35] => l [36] => e [37] => " [38] => } )
Seperti yang anda boleh lihat daripada hasil output, tatasusunan rentetan mengandungi semua aksara dalam rentetan JSON, termasuk simbol seperti kurungan, tanda petikan , dan koma.
Tukar rentetan kepada tatasusunan
Tukar rentetan kepada tatasusunan, biasanya digunakan untuk menghuraikan parameter URL atau menukar fail CSV kepada tatasusunan. Berikut ialah contoh menukar rentetan kepada tatasusunan:
$string = 'name=Tom&age=25&gender=male'; parse_str($string, $array); print_r($array);
Dalam contoh di atas, kita mula-mula menentukan rentetan $string
yang mengandungi parameter URL, kemudian gunakan fungsi parse_str()
untuk menukarnya ke dalam tatasusunan bersekutu $array
.
Hasil keluaran adalah seperti berikut:
Array ( [name] => Tom [age] => 25 [gender] => male )
Seperti yang dapat dilihat daripada hasil keluaran, tatasusunan bersekutu mengandungi semua pasangan nilai kunci dalam rentetan.
Selain itu, jika kita ingin menukar fail CSV kepada tatasusunan, kita boleh menggunakan fungsi fgetcsv()
. Fungsi ini membaca fail CSV baris demi baris dan menukar setiap baris data kepada tatasusunan. Berikut ialah contoh membaca fail CSV dan menukarnya kepada tatasusunan:
$csvFile = 'data.csv'; $handle = fopen($csvFile, 'r'); while (!feof($handle)) { $row = fgetcsv($handle); if ($row) { $array[] = $row; } } fclose($handle); print_r($array);
Dalam contoh di atas, kami mula-mula membuka fail data.csv
dan membaca setiap barisnya menggunakan fungsi fgetcsv()
data dan tukar setiap baris data kepada tatasusunan $row
. Akhir sekali, kami menyimpan setiap tatasusunan $row
ke dalam tatasusunan $array
.
Hasil output adalah seperti berikut:
Array ( [0] => Array ( [0] => Tom [1] => 25 [2] => male ) [1] => Array ( [0] => Mary [1] => 30 [2] => female ) [2] => Array ( [0] => John [1] => 20 [2] => male ) )
Seperti yang anda boleh lihat daripada hasil output, tatasusunan $array
mengandungi semua data dalam fail CSV.
Kesimpulan
Dalam PHP, menukar data kepada tatasusunan rentetan atau rentetan kepada tatasusunan boleh menggunakan fungsi yang berbeza bergantung pada keperluan kita. Dalam contoh di atas, kami memperkenalkan fungsi seperti json_encode()
, str_split()
, parse_str()
dan fgetcsv()
, yang merupakan fungsi manipulasi tatasusunan yang biasa digunakan dalam PHP. Menguasai fungsi ini boleh membantu kami memproses dan mengubah data dengan lebih baik semasa pembangunan.
Atas ialah kandungan terperinci Bagaimana untuk menukar data php ke dalam tatasusunan rentetan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!