当我们需要把一个字符串转换成整型时,php提供了几种方法,下面分别介绍这些方法的使用。
使用(int)强制类型转换符(php 4, php 5, php 7)
这是一种比较常见的方法,只需要在字符串前加上(int)强制类型转换符,即可将字符串转换成整型。
示例代码:
$str = 123;$int = (int)$str;echo $int; // 输出 123
需要注意的是,(int)只能将字符串中的数字转换成整型,如果字符串中包含非数字字符,只会返回0,如下示例:
$str = 123abc;$int = (int)$str;echo $int; // 输出 123
$str = abc;$int = (int)$str;echo $int; // 输出 0
使用intval()函数(php 4, php 5, php 7)
intval()函数可以将一个字符串转换成整型。若字符串不是完整的整数,则intval()只返回第一个数字。如果字符串的开头不是数字,则返回0。
示例代码:
$str = 123;$int = intval($str);echo $int; // 输出 123
$str = 123abc;$int = intval($str);echo $int; // 输出 123
$str = abc;$int = intval($str);echo $int; // 输出 0
使用(double)强制类型转换符(php 4, php 5, php 7)
(double)强制类型转换符可以将字符串转换成浮点型,如果字符串中包含非数字字符,则返回0。
示例代码:
$str = 123;$int = (double)$str;echo $int; // 输出 123
$str = 123.45;$int = (double)$str;echo $int; // 输出 123.45
$str = abc;$int = (double)$str;echo $int; // 输出 0
使用sscanf()函数(php 4, php 5, php 7)
sscanf()函数可以解析格式化的字符串,将其中的数字提取出来并转换成整型。如果字符串中不包含数字,则返回0。
示例代码:
$str = 123;sscanf($str, %d, $int);echo $int; // 输出 123
$str = 123abc;sscanf($str, %d, $int);echo $int; // 输出 123
$str = abc;sscanf($str, %d, $int);echo $int; // 输出 0
综上所述,以上几种方法都可以将字符串转换成整型,使用哪种方法取决于个人习惯和需求。但需要注意,若字符串中包含非数字字符,则需要根据具体情况选择方法,防止出现错误。
以上就是php怎么把一个字符串转为整型的详细内容。
