当前位置: 首页 > 面试题库 >

如何从表格中获取整数而不是字符串?

应子真
2023-03-14
问题内容

从表单获取变量:

<form method = 'POST' action = ''>
        <input type = 'text' name = 'a' size = '1' >
        <input type = 'submit' value = 'Find it'>
</form>"

如果我输入1并使用gettype($ POST _ [‘a’]),它将返回字符串,可以输入int吗?因为在此之后,我要检查该变量是否为int。

更新

得到的答案是,它总是返回字符串,他们为我提供了使用(int)或intval()的方法,但是如果它真的像’a’这样的字符串,它会返回0,但它也可能是整数值0,如何克服这个问题?

更新

编辑错字后,Brad Christie建议使用is_numeric的最佳方法


问题答案:
// convert the $_POST['a'] to integer if it's valid, or default to 0
$int = (is_numeric($_POST['a']) ? (int)$_POST['a'] : 0);

您可以使用is_numeric进行检查,并且php也允许转换为整数类型。

对于实际比较,您可以执行is_int。

更新资料

filter_input对于此数据类型(和其他数据类型),版本5.2 可能更健壮:

$int = filter_input(INPUT_POST, 'a', FILTER_VALIDATE_INT);

我选择FILTER_VALIDATE_INT,但也有FILTER_SANITIZE_NUMBER_INT和很多更
--IT只是取决于你想做的事情。



 类似资料:
  • 问题内容: 我正在使用 Python 2 从 ASCII编码的 文本文件中解析JSON 。 当使用或 加载这些文件时,我所有的字符串值都转换为Unicode对象而不是字符串对象。问题是,我必须将数据与仅接受字符串对象的某些库一起使用。我 无法更改库, 也 无法 更新它们。 是否可以获取字符串对象而不是Unicode对象? 更新资料 很久以前 ,当我坚持使用 Python 2 时就问 了 这个问题。

  • 问题内容: 我有一个String变量(基本上是一个英语句子,带有未指定数量的数字),我想将所有数字提取到一个整数数组中。我想知道是否有使用正则表达式的快速解决方案? 我使用了Sean的解决方案,并对其进行了一些更改: 问题答案: …打印和。 -?匹配前导负号-可选。 d匹配一个数字,但是我们需要像Java String中那样编写。因此, d +匹配1个或多个数字。

  • 问题内容: 我正在使用Python 2从ASCII编码的文本文件中解析JSON 。 用json或 加载这些文件时simplejson,我所有的字符串值都转换为Unicode对象而不是字符串对象。问题是,我必须将数据与仅接受字符串对象的某些库一起使用。我无法更改库,也无法更新它们。 是否可以获取字符串对象而不是Unicode对象? 例 问题答案: 解决方案 用法示例: 它是如何工作的,为什么要使用它

  • 问题内容: 所以我可以这样做: 但是我找不到办法。我想做类似的事情: 这也不起作用: 问题答案: Swift 2.0 您可以使用构造函数初始化Integer

  • 我有相同格式的不同唯一字符串。字符串看起来像这样,我想从这个字符串中获取唯一的整数值。每次这个值都必须相同,并且依赖于字符串。我尝试将字符串的每个字符转换为int,然后将字符彼此相加。但如果我有两个字符串具有相同的一组符号,它返回的整数值彼此相等。所以不适合我。如何从唯一字符串生成唯一整数值? 更新: 考虑了所有给定的解决方案后,我决定创建函数,生成唯一的整数值。我希望它能排除碰撞。

  • 我有以下代码: LR是类的列表类型。在这个列表中,我有15个索引,例如在索引[0]中,我有: 现在在这个索引[0]中,我有两个int的变量end 88和start 96 在这个for循环中,我需要做的是: _fts是一个<代码>列表 我有两个错误: 错误31“系统”的最佳重载方法匹配。集合。通用。列表。添加(int)”有一些无效参数 和 错误32参数1:无法从“Lightings\u提取器”转换。