У меня небольшая проблема. Я пытаюсь преобразовать строку типа «1 234» в число: 1234 Я не могу туда попасть. Строка очищается от веб-сайта. Возможно, там не место? Потому что я пробовал такие методы, как str_replace и preg_split для пространства и ничего. Также (int) $ abc принимает только первую цифру (1). Если у кого-то есть идее, я бы с удовольствием! Спасибо!
Так я бы справился с этим …
<?php $string = "Here! is some text, and numbers 12 345, and symbols !£$%^&"; $new_string = preg_replace("/[^0-9]/", "", $string); echo $new_string // Returns 12345 ?>
intval(preg_replace('/[^0-9]/', '', $input))
Скребковые веб-сайты всегда требуют определенного кода, вы знаете, как вы получаете вход, – и вы пишете код, необходимый для его использования.
Вот почему первый ответ по-прежнему str_replace.
$iInt = (int)str_replace(array(" ", ".", ","), "", $iInt);
$str = "1 234"; $int = intval(str_replace(' ', '', $str)); //1234