Dalam PHP, menukar rentetan kepada integer ialah operasi yang sangat biasa. Biasanya, kita perlu menukar nombor dalam rentetan kepada integer untuk melakukan pengiraan berangka dan operasi lain. Berikut akan memperkenalkan kaedah menukar rentetan kepada integer dalam PHP.
1. Gunakan fungsi (int) atau intval()
Terdapat dua kaedah dalam PHP untuk menukar rentetan kepada integer. Yang pertama ialah menggunakan operator cast (int) untuk menukar rentetan kepada integer. Seperti yang ditunjukkan di bawah:
$str = "123456"; $int = (int)$str; echo $int;
Hasil output ialah: 123456
Kaedah lain ialah menggunakan fungsi intval(). Fungsi ini boleh menerima parameter dan menukarnya kepada integer. Seperti yang ditunjukkan di bawah:
$str = "123456"; $int = intval($str); echo $int;
Hasil output ialah: 123456
Kelebihan menggunakan fungsi (int) atau intval() ialah ia sangat mudah dan mudah digunakan, tetapi ia juga mempunyai beberapa batasan. Pertama, kaedah ini akan mengembalikan 0 apabila rentetan mengandungi aksara bukan angka. Kedua, apabila rentetan mengandungi perpuluhan, kaedah ini menukar kepada bahagian integer. Akhir sekali, jika nilai terlalu besar untuk diwakili sebagai integer, ralat akan dikembalikan.
2. Gunakan fungsi strtol()
PHP juga menyediakan fungsi yang dipanggil strtol(), yang boleh menukar rentetan kepada integer dan menyimpan hasilnya dalam pembolehubah penunjuk. Seperti yang ditunjukkan di bawah:
$str = "123456"; $p = 0; $int = strtol($str, $p, 10); echo $int;
Outputnya ialah: 123456
Di sini, pembolehubah $p ialah penunjuk kepada aksara bukan angka pertama dalam rentetan. Jika rentetan tidak mengandungi aksara bukan angka, nilai penunjuk ditetapkan kepada panjang rentetan. Selain itu, fungsi strtol() juga boleh menentukan nombor asas. Jika tidak dinyatakan, nombor asas lalai 10 digunakan.
3. Gunakan fungsi sscanf()
Fungsi sscanf() dalam PHP boleh membaca data daripada rentetan dan membacanya ke dalam format yang ditentukan. Sebagai contoh, kita boleh menggunakan fungsi ini untuk menukar rentetan kepada integer. Seperti yang ditunjukkan di bawah:
$str = "123456"; sscanf($str, "%d", $int); echo $int;
Hasil output ialah: 123456
Di sini, %d bermaksud nilai input ialah nombor perpuluhan.
Ringkasan:
Menukar rentetan kepada integer ialah operasi yang sangat biasa dalam PHP. PHP menyediakan beberapa cara untuk mencapainya, seperti menggunakan fungsi (int) atau intval(), menggunakan fungsi strtol() dan menggunakan fungsi sscanf(). Tidak kira kaedah yang digunakan, ia sangat mudah, cekap dan boleh dipercayai. Kaedah yang anda pilih bergantung terutamanya pada keperluan dan pilihan anda, tetapi tidak kira kaedah yang anda pilih, anda harus memastikan bahawa rentetan input sepadan dengan jangkaan anda.
Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan kepada integer dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!