php 中怎么把字符串转为整形啊? 跪求!

例如字符串:“1157425104434495489”要求转为整形后为:1157425104434495489intval(),floatval()什么的,都不行,转后都... 例如字符串:“1157425104434495489” 要求转为整形后为:1157425104434495489
intval(),floatval()什么的,都不行,转后都会丢失一部分数据,有什么方法可以得到完整的整数?
展开
 我来答
宁静之角落
2013-04-11
知道答主
回答量:12
采纳率:100%
帮助的人:12.1万
展开全部
intval()当然不行,因为已经超过int自身的长度啦,所以肯定会被截短,可以用隐性转换嘛,因为php本身就是弱类型的,所以搞不懂LZ为什么要转,在程序里面使用本来就会自动帮你转类型的,如果 非要转,可以这样:
$str = "1157425104434495489";
$int_str = $str*1;

对比一下,var_dump($str == $int_str) //输出 bool true;
胡胜赖
2015-07-03 · TA获得超过519个赞
知道答主
回答量:124
采纳率:66%
帮助的人:17.3万
展开全部
$t=(int)$ta;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
daenqi1234
2013-04-11 · TA获得超过162个赞
知道答主
回答量:189
采纳率:33%
帮助的人:60.3万
展开全部
就是挨个字符取呗,没取出一个字符就用它的ascii码来转化就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
濮飞章075
2013-04-11 · 超过21用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:45.2万
展开全部
要转化的数据超出了int类型,将这个字符串转化为float类型才会完整,如果是其它像这样很大的数字,不想要小数点,可以再用一下正则处理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ispiders
2013-04-11 · TA获得超过1241个赞
知道小有建树答主
回答量:517
采纳率:80%
帮助的人:215万
展开全部
php中处理不了那么大的数,只能以字符串形式处理,硬要化为整数的话就是会丢失数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式