PHP字符串到整数不好玩,编码问题?

时间:2012-12-07 06:03:15

标签: php casting integer

我正在读取CSV文件(采用UTF-8编码)。其中一个值是一个数字,当我尝试将其转换为整数时,我可以做一些计算,它只是设置为零。我究竟做错了什么?

var_dump ( $row3[_MM_Impressions] );
//writes: string(5) "59"

$imps = (int)$row3[_MM_Impressions];
var_dump($imps);
//writes: int(0) 

$imps = $row3[_MM_Impressions]*1;
var_dump($imps);
//writes: int(0) 

$imps = intval($row3[_MM_Impressions]);
var_dump($imps);
//writes: int(0) 

1 个答案:

答案 0 :(得分:2)

您的vars中有十六进制字符串编号...那么为什么不使用hexdec

  

返回表示的十六进制数的十进制等值   由hex_string参数。 hexdec()将十六进制字符串转换为   十进制数。

     

hexdec()将忽略它遇到的任何非十六进制字符。