How to get number from string in PHP?

You can simply use the PHP strlen() function to find the number of characters in a string of text. It also includes the white spaces inside the specified string.

Let's take a look at the following example to understand how it basically works:


Here are some more FAQ related to this topic:

This is a short PHP tutorial on how to get numbers from a string. To do this, we will extract the numbers using the function preg_match_all.

The preg_match_all function.

The preg_match_all function allows us to match certain characters using regular expressions. In our case, we want to match numerical values.

Getting integers / whole numbers from a string.

If you’re looking to extract whole numbers from a string, then you can use the following piece of code:

//A string containing two integer values.
$str = 'There are 330 days until Christmas. It is currently 12PM.';

//Extract the numbers using the preg_match_all function.
preg_match_all('!\d+!', $str, $matches);

//Any matches will be in our $matches array
var_dump($matches);

If you run the code above, you will get the following result:

How to get number from string in PHP?

Extracting numbers from a string in PHP.

As you can see, we were able to extract the integers from our string by using PHP’s preg_match_all function.

But what if we also want to be able to extract decimal numbers?

Extracting decimal numbers.

To extract decimal and float numbers from a string, we will have to use a different regular expression. Otherwise, our code in the previous example will split the numbers up.

//A string that contains both an integer and a decimal number.
$string = 'A 2 euro coin weighs 8.5 grams.';

//Extract the numbers using the preg_match_all function.
preg_match_all('!\d+\.*\d*!', $string, $matches);

//var_dump the result
var_dump($matches);

In the example above, we were able to extract both the whole number and the decimal number. If you var_dump the array, you will see the following result:

This tutorial shows you php get only numbers from string example. We will look at example of how to get only numbers from string in php?. We will look at example of get only numbers from string in php example. you will learn how to use function to get only numbers from string in php?.

There are tow example to get only numbers from string in PHP. in this example, we will use to preg_replace() and preg_match_all() function to Get Only Numbers. so Let's both the following example with output.

So, if you assign an integer value to a variable, the type of that variable will automatically be an integer. Then, if you assign a string to the same variable, the type will change to a string.

This automatic conversion can sometimes break your code.


PHP Integers

2, 256, -256, 10358, -179567 are all integers.

An integer is a number without any decimal part.

An integer data type is a non-decimal number between -2147483648 and 2147483647 in 32 bit systems, and between -9223372036854775808 and 9223372036854775807 in 64 bit systems. A value greater (or lower) than this, will be stored as float, because it exceeds the limit of an integer.

Note: Another important thing to know is that even if 4 * 2.5 is 10, the result is stored as float, because one of the operands is a float (2.5).

Here are some rules for integers:

  • An integer must have at least one digit
  • An integer must NOT have a decimal point
  • An integer can be either positive or negative
  • Integers can be specified in three formats: decimal (10-based), hexadecimal (16-based - prefixed with 0x) or octal (8-based - prefixed with 0)

PHP has the following predefined constants for integers:

  • PHP_INT_MAX - The largest integer supported
  • PHP_INT_MIN - The smallest integer supported
  • PHP_INT_SIZE -  The size of an integer in bytes

PHP has the following functions to check if the type of a variable is integer:

  • is_int()
  • is_integer() - alias of is_int()
  • is_long() - alias of is_int()

Example

Check if the type of a variable is integer:

$x = 5985;
var_dump(is_int($x));

$x = 59.85;
var_dump(is_int($x));
?>

Try it Yourself »



PHP Floats

A float is a number with a decimal point or a number in exponential form.

2.0, 256.4, 10.358, 7.64E+5, 5.56E-5 are all floats.

The float data type can commonly store a value up to 1.7976931348623E+308 (platform dependent), and have a maximum precision of 14 digits.

PHP has the following predefined constants for floats (from PHP 7.2):

  • PHP_FLOAT_MAX - The largest representable floating point number
  • PHP_FLOAT_MIN - The smallest representable positive floating point number
  •  PHP_FLOAT_MAX - The smallest representable negative floating point number
  • PHP_FLOAT_DIG - The number of decimal digits that can be rounded into a float and back without precision loss
  • PHP_FLOAT_EPSILON - The smallest representable positive number x, so that x + 1.0 != 1.0

PHP has the following functions to check if the type of a variable is float:

  • is_float()
  • is_double() - alias of is_float()

Example

Check if the type of a variable is float:

$x = 10.365;
var_dump(is_float($x));
?>

Try it Yourself »


PHP Infinity

A numeric value that is larger than PHP_FLOAT_MAX is considered infinite.

PHP has the following functions to check if a numeric value is finite or infinite:

However, the PHP var_dump() function returns the data type and value:

Example

Check if a numeric value is finite or infinite:

$x = 1.9e411;
var_dump($x);
?>

Try it Yourself »


PHP NaN

NaN stands for Not a Number.

NaN is used for impossible mathematical operations.

PHP has the following functions to check if a value is not a number:

However, the PHP var_dump() function returns the data type and value:

Example

Invalid calculation will return a NaN value:

$x = acos(8);
var_dump($x);
?>

Try it Yourself »


PHP Numerical Strings

The PHP is_numeric() function can be used to find whether a variable is numeric. The function returns true if the variable is a number or a numeric string, false otherwise.

Example

Check if the variable is numeric:

$x = 5985;
var_dump(is_numeric($x));

$x = "5985";
var_dump(is_numeric($x));

$x = "59.85" + 100;
var_dump(is_numeric($x));

$x = "Hello";
var_dump(is_numeric($x));
?>

Try it Yourself »

Note: From PHP 7.0: The is_numeric() function will return FALSE for numeric strings in hexadecimal form (e.g. 0xf4c3b00c), as they are no longer considered as numeric strings.

How do I retrieve a number from a string?

The number from a string in javascript can be extracted into an array of numbers by using the match method. This function takes a regular expression as an argument and extracts the number from the string. Regular expression for extracting a number is (/(\d+)/).

How to get number from variable in PHP?

The PHP is_numeric() function can be used to find whether a variable is numeric. The function returns true if the variable is a number or a numeric string, false otherwise.

How to convert string number to integer in PHP?

The intval() function converts a string to an integer, and the floatval() function converts a string to a floating-point value. The number_format() function converts a string to a number and returns the formatted number on success; if it fails, the function throws an E_WARNING error.

How to get only int value in PHP?

The intval() function returns the integer value of a variable.