Devdit
 

Warning: A non-numeric value encountered คือ วิธีแก้ไข

2.4K

ภาษา PHP ต้องการบวกตัวเลข โดยตัวแปร a ใช้คำสั่ง number_format เพื่อกำหนดเลขทศนิยม 2 ตำแหน่ง และบวกค่าดังกล่าวเพิ่ม 100 พอรันแล้วขึ้นข้อความว่า Warning: A non-numeric value encountered และผลลัพธ์จากการบวกก็ผิด ไม่ถูกต้อง ปัญหานี้ต้องแก้ไขอย่างไร

<?php
    $a = number_format( 4000, 2 );
    echo "{$a} + 100 = ".( $a + 100 );
?>
4,000.00 + 100 = 104

 

วิธีแก้ไข

ปัญหานี้เกิดจากตัวแปร a ที่นำไปบวกเพิ่ม 100 ไม่ใช่ตัวเลขแต่เป็นข้อความ (string) เนื่องจากมีเครื่องหมายคอมม่า แนะนำให้บวกค่าก่อนใช้คำสั่ง number_fomat หรือลบคอมม่าออกจากตัวแปร a สามารถเขียนโปรแกรมได้ดังนี้

<?php
    $a = 4000;
    echo "{$a} + 100 = ".number_format(( $a + 100 ), 2 );
?>
4000 + 100 = 4,100.00
เขียน 1 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ