How to Convert a String to a Number in PHP
- Use Explicit Type Casting to Convert a String to a Number in PHP
-
Use
intval()
Function to Convert a String to a Number in PHP -
Use
settype()
Function to Convert a String to a Number in PHP
In this article, we will introduce methods to convert a string to a number in PHP.
- Using explicit type casting
- Using
intval()
/floatval()
function - Using
settype()
function
Use Explicit Type Casting to Convert a String to a Number in PHP
Explicit type casting converts a variable of any type to a variable of the required type. It converts a variable to primitive data types. The correct syntax to explicitly typecast a variable to an int
or a float
is as follows
$variableName = (int)$stringName
$variableName = (float)$stringName
The variable $variableName
is the integer variable to hold the value of the number. The variable $stringName
is the numeric string
. We can also convert non-numeric strings to a number.
<?php
$variable = "10";
$integer = (int)$variable;
echo "The variable $variable has converted to a number and its value is $integer.";
echo "\n";
$variable = "8.1";
$float = (float)$variable;
echo "The variable $variable has converted to a number and its value is $float.";
?>
Output:
The variable 10 has converted to a number and its value is 10.
The variable 8.1 has converted to a number and its value is 8.1.
For non-numeric string, we will get a 0 as the output.
<?php
$variable = "abc";
$integer = (int)$variable;
echo "The variable has converted to a number and its value is $integer.";
?>
Output:
The variable has converted to a number and its value is 0.
Use intval()
Function to Convert a String to a Number in PHP
The intval()
function converts a string
to an int
.
The floatval()
function converts a string
to a float
.
The parameter that those functions accept is a string
and the return value is an integer or a floating number respectively.
intval( $StringName );
The variable StringName
holds the value of the string
.
<?php
$variable = "53";
$integer = intval($variable);
echo "The variable $variable has converted to a number and its value is $integer.";
echo "\n";
$variable = "25.3";
$float = floatval($variable);
echo "The variable $variable has converted to a number and its value is $float.";
?>
Output:
The variable 53 has converted to a number and its value is 53.
The variable 25.3 has converted to a number and its value is 25.3.
It the given string is a mixture of the number and string representation, like 2020Time
, intval()
will return 2020
. But if the given string doesn’t start with a number then it returns 0
. So is the floatval()
method.
Example Codes:
<?php
$variable = "2020Time";
$integer = intval($variable);
echo "The variable $variable has converted to a number and its value is $integer.";
echo "\n";
$variable = "Time2020";
$integer = intval($variable);
echo "The variable $variable has converted to a number and its value is $integer.";
echo "\n";
$variable = "25.3Time";
$float = floatval($variable);
echo "The variable $variable has converted to a number and its value is $float.";
echo "\n";
$variable = "Time25.3";
$float = floatval($variable);
echo "The variable $variable has converted to a number and its value is $float.";
?>
Output:
The variable 2020Time has converted to a number and its value is 2020.
The variable Time2020 has converted to a number and its value is 0.
The variable 25.3Time has converted to a number and its value is 25.3.
The variable Time25.3 has converted to a number and its value is 0.
Use settype()
Function to Convert a String to a Number in PHP
The settype()
function converts the variable of any datatype to a particular datatype. It accepts two parameters, the variable and the type name.
settype($variableName, "typeName");
The $variableName
is the variable of any datatype that we want to convert to a number. The "typeName"
contains the name of the datatype that we want for our $variableName
variable.
<?php
$variable = "45";
settype($variable, "integer");
echo "The variable has converted to a number and its value is $variable.";
?>
The settype()
function has set the type of $variable
from string
to integer. It is only suitable for primitive datatypes.
Output:
The variable has converted to a number and its value is 45.
Related Article - PHP String
- How to Remove All Spaces Out of a String in PHP
- How to Convert DateTime to String in PHP
- How to Convert String to Date and Date-Time in PHP
- How to Convert an Integer Into a String in PHP
- How to Convert an Array to a String in PHP