У меня проблема с sprintf()
, я использую его для сохранения запроса mysql в var, чтобы использовать его позже.
просто чтобы сообщить, я использую библиотеку adodb для операций, связанных с базой данных.
например $value=25.5
и $id=5
, у меня есть что-то вроде
$value = number_format($baseValue, 2, ".", "");
$query = sprintf("Insert into table_name (id, value) values (%d, $.02f)", $id, $value);
$db->Execute($query);
перед этим есть условие, которое решает, будет ли перед этим еще один $ запрос. если первый запрос не выполняется, он выполняется нормально, являясь запросом
Insert into table_name (id, value) values (5, 25.50)
но если первый запрос выполняется, я получаю сообщение об ошибке, потому что запрос выглядит как
Insert into table_name (id, value) values (5, 25,50)
Я пытался напечатать $value
прямо перед sprintf()
, и он все еще имеет правильный формат, с какой стати это происходит и как я могу это решить?
Редактировать : $ value даже не использовалось и не изменялось до этого момента