【问题标题】:A non well formed numeric value encountered in laravellaravel 中遇到的格式不正确的数值
【发布时间】:2020-03-15 16:00:42
【问题描述】:

我正在尝试将两个变量加在一起。我相信两者都包含一个整数,但是当我绘制存储在$product->mileage 中的内容时,我收到以下错误:

遇到格式不正确的数值

    $oilchange = $request->oilchange_at_kms;

    $product = Product::find($request->product_id);

    $mileage = $product->mileage; // Error within this variable, but it is an int

    $total = $mileage + $oilchange;

我该如何测试,或者如何在我的代码中找到问题?

【问题讨论】:

    标签: laravel


    【解决方案1】:

    当您尝试将整数与字符串或某种类型的非数字字段相加时,通常会弹出此错误。

    您可以使用 PHP gettype() 方法对此进行测试:

    dump(gettype($product->mileage));
    dd(gettype($oilchange));
    

    如果其中一个是字符串(可能来自表单响应),如果您确定该值始终是 int,则可以将其转换为 int

     $mileage = (int)$product->mileage;
    

    不建议这样做,因为您应该先尝试解析变量中的类型,但它可能会帮助您进行测试。

    【讨论】:

    • 谢谢,问题在于 $mileage = $product->mileage; 中的一个逗号;返回 2,000 并且 $oilchnage 显示 500,当我删除逗号时它可以工作 感谢您的快速回复,您做得像您的工作一样出色
    猜你喜欢
    • 1970-01-01
    • 2014-09-18
    • 1970-01-01
    相关资源
    最近更新 更多