我使用简单的explode
操作来使用数组值将记录插入mysql
数据库。
我使用的代码是:
// for loop above
$fieldsArr = explode(',', $field_names);
其中$field_names
是一个字符串,如:
'1_gps_update_coordinates','1' // prints out just fine
'1_meter_conf_holiday1_end','2099-01-01' // also fine
但
'1_electricity_unit_price','0,100' gives problem.
我怎样才能克服这一点?任何提示都是适当的。
Ps $field_names
值直接来自数据库,所以我无法真正写出if statement
。
答案 0 :(得分:3)
如果您无法更改输入数据,可以执行以下操作:
使用str_replace函数
将分隔符从逗号更改为分号$field_name = str_replace("','", "';'", $field_name)
然后你可以用分号爆炸
$fieldsArr = explode(';', $field_names);
答案 1 :(得分:2)
您需要使用英文数字格式
插入float
0.1
而不是欧洲0,1
使用number_formatting()
或str_replace(',', '.', $val);