php - 如何在 PHP 中验证无符号数?

标签 php validation

我不确定如何处理这个问题,我已经尝试了对我来说最明显的解决方案,但到目前为止,没有一个被证明是完全令人满意的。我一定是忽略了一些非常简单的事情。

我有一个输入文本类型的表单:

<input type="text" name="album_id">

我想验证输入以便用户只输入无符号整数...

$required = array(); // required or invalid input

$tmp = trim($_POST['album_id']);

if (!is_int((int)$tmp)) {
   $required['album'] = 'The album id must contain a positive numeric value only.';
}

到目前为止,我使用的是 !is_numeric($tmp),但用户可以输入 9.2 或“1e4”,它会验证...所以它不起作用。

我也尝试过 !is_int((int)$tmp) 但出于某种原因,那个不起作用(也许它应该但我做错了......) . 我尝试了 ctype_digit 但没有成功。 我可能忽略了一些东西,但不确定是什么。

如何在 php 中验证无符号数?没有 float 、负数等...只有一个简单的无符号数(1 到 n)。

最佳答案

如果你想检查某个变量是否只包含数字(这似乎是你想要的,在这里),你可能不得不使用ctype_digit()。 .


不确定您尝试了什么,但类似这样的方法应该有效:

$tmp = trim($_POST['album_id']);
if (ctype_digit($tmp)) {
    // $tmp only contains digits
}

关于php - 如何在 PHP 中验证无符号数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5529030/

相关文章:

php - Zend Framework 2 从模块添加导航项

php - 如何在 ruby​​ 文件中执行 php 脚本

php - Laravel - Composer 在更新平台后检测到问题

java - Spring验证不遵循POJO原则

c# - 'generic' 电话号码的基本正则表达式

php - 从 MySql 查询打印更多结果

PHP Solr Xpath错误: no elements found

node.js - 为什么我不能验证 mongoose 中的嵌入式文档?这样做的正确方法是什么?

c# - DataGridView 验证旧值而不是新值

Delphi 中的 SQL 验证