Dua kaedah pengesanan: 1. Gunakan fungsi is_numeric() untuk mengesan sama ada rentetan ialah rentetan angka Sintaks ialah "is_numeric (rentetan)". 2. Tukar rentetan kepada jenis angka, dan kemudian bandingkan nombor dengan rentetan asal untuk menentukan sama ada sintaksnya ialah "strcmp((float)$str,$str)==0". , sebaliknya tidak.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi PHP 8.1, komputer DELL G3
Kaedah 1: Gunakan is_numeric () Fungsi mengesan bahawa rentetan
mengandungi nombor sahaja, maka rentetan itu ialah rentetan angka.
Fungsi is_numeric() boleh mengesan sama ada rentetan ialah rentetan angka.
is_numeric ($var)
$var: pembolehubah untuk dikesan.
Mengembalikan BENAR jika pembolehubah yang ditentukan $var ialah nombor atau rentetan angka, jika tidak, mengembalikan FALSE. Ambil perhatian bahawa float mengembalikan 1, iaitu BENAR. (iaitu boleh menyemak kedua-dua integer dan perpuluhan).
<?php header("Content-type:text/html;charset=utf-8"); function f($str){ if (is_numeric($str)){ echo "$str 是数字字符串<br><br>"; } else{ echo "$str 不是数字字符串<br><br>" ; } } f("a678"); f("678"); f("3.14"); ?>
Kaedah 2: Jenis hantaran dan bandingkan untuk kesamarataan
Dengan jenis hantaran, tukar rentetan menjadi jenis angka
Bandingkan nombor dengan rentetan asal untuk melihat sama ada ia sama
Jika ia sama, rentetan asal ialah rentetan angka.
<?php header("Content-type:text/html;charset=utf-8"); function f($str){ $num=(float)$str; if (strcmp($num,$str)==0){ echo "$str 是数字字符串<br><br>"; } else{ echo "$str 不是数字字符串<br><br>" ; } } f("3.14"); f("a678"); f("678"); f("23d5"); ?>
Arahan:
1 🎜> Hanya tambahkan jenis sasaran yang disertakan dalam kurungan sebelum pembolehubah yang hendak ditukar Jenis pembolehubah yang dibenarkan dalam kurungan adalah seperti berikut:
fungsi strcmp() membandingkan dua rentetan.
Nilai pulangan: | Fungsi mengembalikan: <?php header('content-type:text/html;charset=utf-8'); $str = '123.456abc'; echo '原变量 $str 的类型为:'.gettype($str)."<br>"; $int = (int)$str; echo '变量 $int 的类型为:' . gettype($int) . '<br>'; $float = (float)$str; echo '变量 $float 的类型为:' . gettype($float) . '<br>'; $bool = (bool)$str; echo '变量 $bool 的类型为:' . gettype($bool). '<br>'; $arr = (array)$str; echo '变量 $arr 的类型为:' . gettype($arr); ?> Salin selepas log masuk <0 - jika rentetan1 kurang daripada rentetan2 >0 - jika string1 lebih besar daripada string2 |
---|
Pembelajaran yang disyorkan: "
Tutorial Video PHPstrcmp(string1,string2)
返回值: | 该函数返回:
|
---|
Atas ialah kandungan terperinci Bagaimana untuk mengesan sama ada rentetan ialah nombor dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!