How to convert a string into number in PHP?
Strings in PHP can be converted to numbers (float / int / double) very easily. In most use cases, it won’t be required since PHP does implicit type conversion. There are many methods to convert string into number in PHP some of them are discussed below:
Method 1: Using number_format() Function. The number_format() function is used to convert string into a number. It returns the formatted number on success otherwise it gives E_WARNING on failure.
Example:
<?php $num = "1000.314"; // Convert string in number using // number_format(), functionecho number_format($num), "\n"; // Convert string in number using // number_format(), functionecho number_format($num, 2);?> |
1,000 1,000.31
Method 2: Using type casting: Typecasting can directly convert a string into float, double or integer primitive type. This is the best way to convert a string into number without any function.
Example:
<?php // Number in string format$num = "1000.314"; // Type cast using intecho (int)$num, "\n"; // Type cast using floatecho (float)$num, "\n"; // Type cast using doubleecho (double)$num;?> |
1000 1000.314 1000.314
Method 3: Using intval() and floatval() Function. The intval() and floatval() functions can also be used to convert the string into its corresponding integer and float values respectively.
Example:
<?php // Number in string format$num = "1000.314"; // intval() function to convert // string into integerecho intval($num), "\n"; // floatval() function to convert// string to floatecho floatval($num);?> |
1000 1000.314
Method 4: By adding 0 or by performing mathematical operations. The string number can also be converted into an integer or float by adding 0 with the string. In PHP, performing mathematical operations, the string is converted to an integer or float implicitly.
<?php // Number into string format$num = "1000.314"; // Performing mathematical operation // to implicitly type conversionecho $num + 0, "\n"; // Performing mathematical operation // to implicitly type conversionecho $num + 0.0, "\n"; // Performing mathematical operation // to implicitly type conversionecho $num + 0.1;?> |
1000.314 1000.314 1000.414


