Rumah > Artikel > pembangunan bahagian belakang > Empat cara untuk menukar tatasusunan kepada integer dalam PHP
Dalam program PHP, kita sering menghadapi situasi di mana kita perlu menukar jenis data tatasusunan kepada jenis data integer Tatasusunan ialah jenis struktur data komposit, dan mungkin terdapat jenis data yang berbeza di dalamnya. Jadi bagaimana untuk menukar tatasusunan menjadi integer dalam PHP? Artikel ini akan berkongsi dengan anda beberapa kaedah.
Kaedah 1: Pemprosesan gelung
Gelung melalui tatasusunan dan gunakan penukaran jenis paksa (int) untuk menukar setiap elemen dalam tatasusunan kepada integer.
Kod contoh:
$test_arr = array('1', '2', '3', '4', '5'); for($i = 0; $i < count($test_arr); $i++){ $test_arr[$i] = (int)$test_arr[$i]; } print_r($test_arr);
Kod di atas menukar setiap elemen dalam tatasusunan kepada integer dengan menggelung melalui tatasusunan dan menggunakan penukaran jenis paksa Hasil output ialah:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Kaedah ini agak mudah, tetapi anda perlu memberi perhatian sama ada setiap elemen boleh berjaya ditukar kepada jenis integer, jika tidak, keputusan yang tidak dapat diramalkan mungkin berlaku.
Kaedah 2: Gunakan fungsi array_map()
Gunakan fungsi array_map() terbina dalam PHP untuk menukar setiap elemen tatasusunan kepada jenis integer dan mengembalikan tatasusunan integer baharu.
Kod contoh:
$test_arr = array('1', '2', '3', '4', '5'); $new_arr = array_map('intval', $test_arr); print_r($new_arr);
Kod di atas menggunakan fungsi array_map() untuk menukar setiap elemen tatasusunan kepada jenis integer dan mengembalikan tatasusunan integer yang baharu Hasil output ialah:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Kaedah ini agak mudah, tetapi anda perlu memberi perhatian untuk menggunakan fungsi intval() untuk menukar elemen tatasusunan kepada integer dengan betul, jika tidak, keputusan yang salah mungkin dikembalikan.
Kaedah 3: Gunakan fungsi array_walk()
Gunakan fungsi array_walk() terbina dalam PHP untuk memproses setiap elemen tatasusunan mengikut keperluan fungsi dan ubah suai nilai tatasusunan asal.
Kod contoh:
$test_arr = array('1', '2', '3', '4', '5'); function convertToInt(&$value, $key){ $value = (int) $value; } array_walk($test_arr, 'convertToInt'); print_r($test_arr);
Kod di atas menggunakan fungsi array_walk() untuk menukar setiap elemen tatasusunan kepada integer dan mengubah suai nilai tatasusunan asal Hasil keluaran ialah:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Kaedah ini lebih fleksibel dalam pelaksanaan dan boleh mengendalikan elemen tatasusunan dengan mudah Walau bagaimanapun, perlu diambil perhatian bahawa fungsi panggil balik diluluskan dalam jenis rujukan, dan nilai tatasusunan asal juga akan diubah suai. selepas pengubahsuaian.
Kaedah 4: Gunakan array_map() dan fungsi penutupan
Gunakan pernyataan masuk PHP untuk menukar antara array_map() dan fungsi penutupan untuk menggunakan fungsi array_map() dan kod Shorter ke menukar tatasusunan.
Kod contoh:
$test_arr = array('1', '2', '3', '4', '5'); $new_arr = array_map(function($item) { return (int)$item; }, $test_arr); print_r($new_arr);
Kod di atas menggunakan fungsi array_map untuk menukar setiap elemen tatasusunan kepada jenis integer dan mengembalikan tatasusunan integer baharu Hasil keluaran ialah:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Kaedah ini boleh menggunakan PHP 5.3 dan lebih tinggi, dan kaedah penukaran boleh ditukar untuk memenuhi keperluan penukaran yang berbeza.
Ringkasan
Artikel ini memperkenalkan beberapa kaedah untuk menukar tatasusunan kepada jenis data integer dalam PHP, termasuk pemprosesan gelung, menggunakan fungsi array_map(), menggunakan fungsi array_walk(), menggunakan array_map( ) dan penutupan fungsi. Setiap kaedah ada kelebihan dan langkah berjaga-jaganya. Pilih sahaja kaedah yang lebih sesuai mengikut keperluan sebenar.
Atas ialah kandungan terperinci Empat cara untuk menukar tatasusunan kepada integer dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!