Dalam PHP, rentetan ialah jenis data biasa dan nombor ialah jenis data asas. Dalam pembangunan, kadangkala kita perlu menukar tatasusunan rentetan kepada jenis berangka untuk melaksanakan pengiraan matematik atau operasi berangka lain.
PHP menyediakan beberapa kaedah untuk menukar tatasusunan rentetan kepada jenis angka. Kaedah ini akan diperkenalkan di bawah, dan senario dan kaedah penggunaan yang berkenaan akan diterangkan.
Terdapat beberapa fungsi penukaran jenis dalam PHP yang boleh menukar rentetan kepada nombor, ia adalah:
Fungsi ini boleh menukar rentetan kepada jenis angka yang sepadan. Contohnya:
$str = "123"; $int = intval($str); $float = floatval($str); $double = doubleval($str); echo $int; // 输出:123 echo $float; // 输出:123.0 echo $double; // 输出:123.0
Perlu diambil perhatian bahawa jika rentetan mengandungi aksara bukan angka, fungsi penukaran jenis akan mengembalikan 0.
Dalam PHP, kita boleh menggunakan hantaran untuk menukar pembolehubah daripada satu jenis kepada jenis yang lain. Sintaks penukaran jenis paksa adalah seperti berikut:
$new_var = (new_type) $old_var;
Antaranya, new_type mewakili jenis data yang ditukar, dan old_var mewakili pembolehubah yang perlu ditukar. Contohnya:
$str = "123"; $int = (int) $str; $float = (float) $str; $double = (double) $str; echo $int; // 输出:123 echo $float; // 输出:123.0 echo $double; // 输出:123.0
Kesan penukaran jenis paksa pada asasnya sama dengan fungsi penukaran jenis, tetapi penukaran jenis paksa lebih mudah dan lebih langsung.
Perlu diambil perhatian bahawa jika rentetan mengandungi aksara bukan angka, pelakon akan mengembalikan 0.
Terdapat beberapa fungsi pemetaan tatasusunan dalam PHP yang boleh menukar setiap elemen dalam tatasusunan kepada jenis lain, termasuk:
Fungsi ini menukar setiap elemen dalam tatasusunan rentetan kepada jenis angka yang sepadan. Contohnya:
$arr = array("123", "456", "789"); $int_arr = array_map("intval", $arr); $float_arr = array_map("floatval", $arr); $double_arr = array_map("doubleval", $arr); print_r($int_arr); // 输出:Array([0] => 123 [1] => 456 [2] => 789) print_r($float_arr); // 输出:Array([0] => 123.0 [1] => 456.0 [2] => 789.0) print_r($double_arr); // 输出:Array([0] => 123.0 [1] => 456.0 [2] => 789.0)
Ambil perhatian bahawa fungsi ini akan mengembalikan 0 jika rentetan mengandungi aksara bukan angka.
Selain menggunakan fungsi untuk penukaran jenis, kita juga boleh menggunakan gelung foreach untuk melintasi tatasusunan dan menukar setiap elemen kepada jenis angka . Contohnya:
$arr = array("123", "456", "789"); foreach($arr as &$val) { $val = (int) $val; } print_r($arr); // 输出:Array([0] => 123 [1] => 456 [2] => 789)
Kaedah ini lebih fleksibel dan boleh diaplikasikan mengikut situasi sebenar.
Ringkasan
Dalam PHP, terdapat banyak kaedah untuk menukar tatasusunan rentetan kepada jenis angka, yang sesuai untuk senario aplikasi yang berbeza. Menggunakan fungsi penukaran jenis dan hantaran boleh dengan cepat dan mudah menukar rentetan kepada jenis angka yang sepadan, manakala menggunakan fungsi pemetaan tatasusunan dan gelung foreach sesuai untuk situasi di mana anda perlu melintasi keseluruhan tatasusunan dan melakukan operasi yang sama pada setiap elemen. Pembangun harus memilih kaedah yang sesuai untuk penukaran jenis berdasarkan keadaan tertentu untuk meningkatkan kecekapan dan kebolehbacaan kod.
Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan rentetan kepada jenis angka dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!