Meneroka Kaedah Terpantas untuk Penukaran Rentetan kepada Integer dalam PHP
Untuk menukar rentetan seperti "123" kepada integer dalam PHP dengan cekap, pendekatan terpantas ialah taip menggunakan (int). Kaedah ini dengan ketara mengatasi prestasi rakan sejawatannya, intval().
Perbandingan Prestasi
Petanda aras mendedahkan bahawa intval() adalah lebih kurang dua setengah kali lebih perlahan daripada (int), terutamanya apabila input sudah menjadi integer. Berikut ialah hasil prestasi untuk pelbagai jenis input:
Function | Time to run 1 million iterations |
---|---|
(int) "123" | 0.55029 |
intval("123") | 1.0115 (183%) |
(int) "0" | 0.42461 |
intval("0") | 0.95683 (225%) |
(int) int | 0.1502 |
intval(int) | 0.65716 (438%) |
(int) array("a", "b") | 0.91264 |
intval(array("a", "b")) | 1.47681 (162%) |
(int) "hello" | 0.42208 |
intval("hello") | 0.93678 (222%) |
Mengendalikan Input Tidak Dijangka
Input yang tidak dijangka, seperti rentetan yang mengandungi aksara atau tatasusunan bukan angka, boleh dikendalikan secara berbeza oleh kaedah ini:
Paksa vs. Typecasting
Sementara paksaan menggunakan 0 $var memberikan prestasi yang serupa seperti ( int) untuk input angka, ia gagal untuk input bukan angka, mengembalikan ralat.
Pertimbangan Tambahan
Apabila memilih kaedah penukaran, ambil perhatian tentang tingkah laku yang tidak dijangka ini :
Atas ialah kandungan terperinci ## Kaedah Penukaran Rentetan PHP kepada Integer manakah yang Terpantas: (int) atau intval()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!