2011-09-18 83 views

Trả lời

28

Hãy thử chức năng của PHP str_replace():

$product['protein'] = str_replace(',', '.', $product['protein']); 

Mà phải là một phù hợp tốt.

Bạn có thể nghĩ rằng sử dụng number_format():

number_format($value, $numberOfDecimals, $charaForDecimalPoint, $charForThousandsSeparator) 

nhưng trong trường hợp của bạn nó sẽ không được áp dụng, do thực tế rằng giá trị bắt đầu của bạn ("0,3") sẽ không được công nhận là một con số. Trên thực tế, dấu thập phân cho giá trị số phải là dấu chấm (".").

Chỉ sử dụng number_format nếu giá trị ban đầu của bạn là số thực.

+0

Đó là một vấn đề khi người/máy bắt đầu nhập số với ngàn dải phân cách như 1.337,42 - một vấn đề Tôi thực sự phải đối mặt với giá trị kết quả là 1.333742 trong php - một yếu tố 1000 sai. –

3
$product['protein'] = str_replace(",",".",$product['protein']) 

Để biết thêm về chức năng str_replace truy cập: http://uk.php.net/str_replace

1

thử

$product['protein'] = str_replace(",",".",$product['protein']) 
Các vấn đề liên quan