Всякий раз, когда я вставляю значение, подобное: 1, в десятичное поле, оно сразу же отклоняет его. Есть ли код в PHP для преобразования значения «1» в «01.00» или «1.00»Преобразование стандартных чисел в десятичные
ответ
Да, это называется number_format
. Обычая образец в вашем случае:
echo number_format(1, 2, '.', '');
1.00
отзовется. Теперь, чтобы использовать его в запросе, чтобы вставить, окружить его в кавычки, и сделать это так:
mysql_query("INSERT INTO tablename (Amount)
VALUES ('" . number_format($your_number), 2, '.', '') . "')";
Почему бы это отвергнуть его? Вы обертываете его кавычками или чем-то еще? В любом случае, чтобы преобразовать, используйте функцию number_format().
Возвращаемое значение 'number_format()' является строкой, поэтому, вероятно, не решит проблему OP. – jeroen
Запрос базы данных в любом случае является большой строкой, поэтому, независимо от того, представлено ли числовое значение в PHP как строка или номер, это не имеет значения. – Pickle
@Pickle Это верно, если вы используете обычный SQL-оператор, я не уверен в подготовленном заявлении (PDO/mysqli). Во всяком случае, у меня никогда не было этой проблемы, ни с обычным sql, ни с PDO, поэтому я предполагаю, что возникла проблема с sql и не столько с самим номером. – jeroen
правильный способ форматирования любого числа до требуемого представления строки функция Sprintf: http://ru2.php.net/sprintf
или, по крайней мере, это было бы самым гибким способом –
Вы можете привести ряд к поплавку, как, например:
$x = (float) $x;
или:
$x = floatval($x);
вы можете сделать это
$num = 1;
print number_format($num , 2);
- 1. Преобразование шестнадцатеричных чисел в десятичные
- 2. преобразование целых чисел в десятичные в строке
- 3. Преобразование целых чисел в десятичные значения
- 4. Преобразование сокращенных чисел в полные десятичные значения
- 5. Преобразование больших шестнадцатеричных чисел в десятичные числа
- 6. Преобразование двоичных чисел в десятичные числа
- 7. Преобразование отрицательных двоичных чисел в десятичные
- 8. Преобразование восьмеричных чисел в десятичные числа в Lex
- 9. Преобразование двоичных чисел в десятичные с использованием Divide-and-Conquer
- 10. Преобразование двоичных чисел в десятичные числа - объяснение формулы
- 11. шестнадцатеричных чисел в десятичные преобразованиях напряжения
- 12. Преобразование шестнадцатеричных в десятичные
- 13. Преобразование в десятичные числа
- 14. Преобразование в десятичные аргументы
- 15. Преобразование десятичных чисел в шестнадцатеричный
- 16. Преобразование чисел в слова
- 17. Преобразование нестандартных строк в десятичные
- 18. преобразование римских цифр в десятичные
- 19. Преобразование строк в десятичные числа
- 20. Преобразование данных nvarchar в десятичные
- 21. Преобразование научной нотации в десятичные
- 22. Преобразование метров в десятичные градусы
- 23. Преобразование римских цифр в десятичные числа
- 24. Десятичные числа для целых чисел
- 25. двоичных чисел в десятичные в Java Script
- 26. преобразование десятичных чисел
- 27. шестнадцатеричных чисел в десятичные преобразования с Sprintf в C
- 28. Алгоритм преобразования восьмеричных чисел в десятичные числа?
- 29. двоичных чисел в десятичные с помощью Хорнер
- 30. Теория преобразования двоичных чисел в десятичные числа
Возвращаемое значение 'number_format()' является строкой, поэтому, вероятно, не решит проблему OP. – jeroen
Этот код работал, спасибо за пример тоже;) Я могу нажать только галочку за 7 минут. – DogPooOnYourShoe
Не имеет значения, правильно ли он готовит свои утверждения, поскольку SQL - это сама строка. –