Get numbers from string with PHP
Solution 1:
You can use regular expressions for this. The \d
escape sequence will match all digits in the subject string.
For example:
<?php
function get_numerics ($str) {
preg_match_all('/\d+/', $str, $matches);
return $matches[0];
}
$one = 'foo bar 4 baz (5 qux quux)';
$two = 'bar baz 2 bar';
$three = 'qux bar 12 quux (3 foo)';
$four = 'foo baz 3 bar (13 quux foo)';
print_r(get_numerics($one));
print_r(get_numerics($two));
print_r(get_numerics($three));
print_r(get_numerics($four));
https://3v4l.org/DiDBL
Solution 2:
You can do:
$str = 'string that contains numbers';
preg_match_all('!\d+!', $str, $matches);
print_r($matches);