У меня есть проблема с некоторыми буквенно-цифровыми строками, содержащими экспоненциальный символ «E», они хранятся в БД в столбце «меняющихся символов», как и строки, но когда я пытаюсь визуализировать их на веб-странице, я получаю «INF строка вместо оригинала.
Например, следующий «55E77583» (который для меня должен быть только кодовый номер заказа) становится «INF» на веб-странице.
Я пытался найти решение, и я нашел команды sprintf и printf, но после некоторых попыток с различными комбинациями% char я не смог получить исходную форму строки.
$code = "55E77583";
echo sprintf('%s', $code);
//Gives me "INF"
$code = "55E77583";
printf('%s', $code);
//Gives me always "INF"
Мне действительно нужно получить исходную форму строки, всегда, во всех возможных буквенно-цифровых комбинациях. Как я могу сделать?
Спасибо.
Если я правильно понимаю, вы хотите отобразить значение 55E77583 в виде строки на вашей веб-странице. Ваш код выше точно сделает это.
Так что каким-то образом ваша переменная должна быть конвертирована в удвоенное или плавающее число, поэтому вы получаете INF, потому что число слишком велико для обработки с помощью PHP.
Убедитесь, что ваша переменная на самом деле является строкой, повторив
echo gettype($code);
Это, скорее всего, приведет к «двойному». Возможно преобразование типа происходит во время вашего выбора.
Других решений пока нет …