在 php 中将字符串转换为整数时返回零
returning zero when converting string to integer in php
当我想在 php 中将数字字符串变量转换为整数时,return 值为零。我用尽了一切方法来转换它!如:(int), (integer), intval(), settype(), eval()等,全部return零!
var_dump($myVariable)
打印以下内容:
string(4) "۲۹"
我找到了!在将字符串转换为整数之前,我应该使用此函数将阿拉伯数字转换为英语:
function convert($string) {
$persian = array('۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹');
$num = range(0, 9);
return str_replace($persian, $num, $string);
}
现在,我可以转换了!
来自 kingkero 的感谢。
其他常见错误是尝试转换包含数字但以零开头的字符串变量,即:
string(5) " 358"
为了解决这个问题,我使用了一个 filter_var 消毒数字 INT 这样做:
$myVariable = filter_var($myVariable, FILTER_SANITIZE_NUMBER_INT);
当我想在 php 中将数字字符串变量转换为整数时,return 值为零。我用尽了一切方法来转换它!如:(int), (integer), intval(), settype(), eval()等,全部return零!
var_dump($myVariable)
打印以下内容:
string(4) "۲۹"
我找到了!在将字符串转换为整数之前,我应该使用此函数将阿拉伯数字转换为英语:
function convert($string) {
$persian = array('۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹');
$num = range(0, 9);
return str_replace($persian, $num, $string);
}
现在,我可以转换了! 来自 kingkero 的感谢。
其他常见错误是尝试转换包含数字但以零开头的字符串变量,即:
string(5) " 358"
为了解决这个问题,我使用了一个 filter_var 消毒数字 INT 这样做:
$myVariable = filter_var($myVariable, FILTER_SANITIZE_NUMBER_INT);