Мне нужно наложить твитовую идентификатор, длинный, на строку. Например, у меня есть:
$id = 39685855740174336;
Но var_dump($id)
печатает float(3.9685855740174E+16)
.
Я попытался получить строковое значение с помощью strval()
:
var_dump(strval($id));
но я получаю string(19) "3.9685855740174E+16"
.
Я ожидаю:
string(17) "39685855740174336"
.
Любые решения?
Это работает для меня (см. Список спецификаторов формата строки ):
$string_id = sprintf('%.0f', $id);
В основном вы рассматриваете его как float, который в PHP он есть, но попросите sprintf()
не включать десятичные знаки.
Вам нужно будет создать значение в виде строки:
$id = '39685855740174336';
Если вы получаете значение из другого источника, такого как POST или GET, данные должны вводиться как строка для начала.
Попробуйте $string_id = (string)$id;