Преобразование php в формат int int

Извините за это, но я не смог найти решение, которое получит это – от 7 000 до 7000.

Я использую intval () и number_format (), но он просто даст мне 7 не 7000.

$myVal = '7,000'; echo intval($myVal); 

это возвращает 7

то же самое происходит с number_format ()

Что я делаю не так?

intval() не будет работать с вашей строкой из-за запятой. Вы можете удалить запятую, используя str_replace() а затем вызывая intval() следующим образом:

echo intval(str_replace(',', '', $myVal))

Если вы используете PHP> = 5.3 (или имеете расширение «intl», установленное, по крайней мере, с версией 1.0), вы также можете использовать класс NumberFormatter для синтаксического анализа NumberFormatter .

 $myVal = '7,000'; $nf = new NumberFormatter("en_EN", NumberFormatter::DECIMAL); var_dump($nf->parse($myVal, NumberFormatter::TYPE_INT32)); # output: int(7000) 

Если вы используете PHP-версию менее 5.3, вам лучше использовать @KevinS. решение.