duanpin2009 2010-10-18 12:03
浏览 29
已采纳

PHP:变量是int但不能执行计算

$bal = (int)$balance;
echo is_int($bal);

$balance is from a file_get_contents($webservice);

I am using (int) to convert a string to integer. is_int returns 1 for true as verification.

Because the value of $bal is always negative, I do the following calculation to make it a positive:

$bal = $bal * -1;

When I do this, the value becomes 0 even though $bal may be -150 previously.

EDIT 1 var_dump ($balance) is returning: string(110) " -399.6000"

EDIT 2 I have used XML Parser to assign variable to array - see my answer below.

  • 写回答

8条回答 默认 最新

  • dqjjw04440 2010-10-18 12:32
    关注

    The issue is that I was using file_get_contents to interact with a GET method for a Web Service.

    This was returning XML header data which I overlooked when assigning to a variable.

    To clear out the XML to leave me with just the value I wanted, I used the PHP XML_PARSER which stored file_get_contents into an array and allowed me to assign the array value to an integer.

    $result = file_get_contents($base);
    
    $p = xml_parser_create();
    xml_parse_into_struct($p, $result, $vals, $index);
    xml_parser_free($p);  
    $bal = $vals[0]['value'];
    echo $bal *-1;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥15 PointNet++的onnx模型只能使用一次
  • ¥20 西南科技大学数字信号处理
  • ¥15 有两个非常“自以为是”烦人的问题急期待大家解决!
  • ¥30 STM32 INMP441无法读取数据
  • ¥15 R语言绘制密度图,一个密度曲线内fill不同颜色如何实现
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧,别用大模型回答,大模型的答案没啥用
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。