Semak sama ada rentetan PHP hanya terdiri daripada integer
P粉788765679
P粉788765679 2023-09-21 21:52:44
0
2
528

Saya sedang menulis kod PHP untuk mengesahkan beberapa data yang dimasukkan oleh pengguna, salah satunya ialah integer, yang kembali benar apabila saya menggunakan$_REQUEST["age"]来获取它,当我用gettype($_REQUEST["age"]) == "integer"is_int($_REQUEST["age"])检查这个值是否为整数时,两者都返回false,但是当我使用is_numeric($_REQUEST["age"]). Saya ingin menyemak sama ada nilai parameter ialah integer, adakah saya menggunakan dua fungsi pertama dengan betul atau adakah saya kehilangan sesuatu?

Terima kasih

Nota: Saya cuba keluarkangettype($_REQUEST["age"]),它给我返回string

P粉788765679
P粉788765679

membalas semua (2)
P粉293550575
 0): echo '整数'; else: echo '其他'; endif; ?>
    P粉107772015

    Versi pendek:

    Gunakanctype_digit($_REQUEST['age'])

    Versi terperinci:

    Masalah anda ialah apabila anda menggunakangettype时,$_REQUEST返回一个字符串。即使该字符串在语义上是一个整数,比如16, ia masih pembolehubah jenis rentetan, bukan pembolehubah jenis integer. Sebab anda mendapat keputusan yang berbeza daripada dua ujian ini adalah kerana mereka menguji perkara yang berbeza:

    • is_numeric测试一个字符串是否包含一个"可选符号、任意数量的数字、可选的小数部分和可选的指数部分",根据PHP文档。在你的情况下,该字符串只包含数字,所以测试返回True.
    • is_int测试变量的类型是否为整数 - 但它不会是整数,因为它是由$_REQUESTDipulangkan.

    Sebab ituis_numeric返回Trueis_int返回False的原因:该字符串只包含数字(所以是"numeric"),但在技术上仍然是一个字符串类型,而不是整数类型(所以不是"int")。当然,is_numeric对于整数测试来说是不够的,因为如果字符串有小数或使用科学计数法,它将返回True, ialah nombor tetapi bukan integer.

    Untuk menguji sama ada$_REQUESTialah integer, tanpa mengira jenis teknikal, anda boleh menguji sama ada semua aksara dalam rentetan ialah nombor (dan oleh itu keseluruhan rentetan ialah integer). Untuk ini anda boleh menggunakanctype_digit:

    ctype_digit($_REQUEST['age'])

    Ini akan berfungsi untuk16返回True,但对16.516e0不返回True- Ini akan membolehkan anda menapis integer daripada nombor bukan integer.

      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!