我正在从CMS中检索一个值,我认为可能会为该值添加一些额外的空间。
该值保存为字符串,但我需要将其转换为整数。
我将查询结果存储在数组中。当我循环并检查值时,我会从var_dump
获得意外输出。
继承我的代码:
foreach ($non_approved_points as $value):
echo $value;
var_dump($value);
endforeach;
这是输出:
90
string(9) "
90
"
看起来该值是9个字符的字符串。我尝试过trim()和str_replace()。有什么想法我怎么能得到这个整数值?
答案 0 :(得分:2)
然后就这样使用intval
:
foreach ($non_approved_points as $value):
$value = intval($value)
echo $value;
var_dump($value);
endforeach;
如果某种方式不起作用 - 我怀疑 - 你也可以使用preg_replace
和一些正则表达式来删除字符串中的非数值:
foreach ($non_approved_points as $value):
$value = intval(preg_replace('/![0-9]+/', '' $value));
echo $value;
var_dump($value);
endforeach;
您应该查看intval
加preg_replace
组合的方式是preg_replace
删除非数字字符,以便将其清除到一个级别。然后intval
执行最后一步,使清理后的字符串成为正确的整数。