PHP Casting

0
4K

Sometimes you need to change a variable from one data type into another, and sometimes you want a variable to have a specific data type. This can be done with casting.


Change Data Type

Casting in PHP is done with these statements:

  • (string) - Converts to data type String
  • (int) - Converts to data type Integer
  • (float) - Converts to data type Float
  • (bool) - Converts to data type Boolean
  • (array) - Converts to data type Array
  • (object) - Converts to data type Object
  • (unset) - Converts to data type NULL

Cast to String

To cast to string, use the (string) statement:

ExampleGet your own PHP Server

$a = 5;       // Integer
$b = 5.34;    // Float
$c = "hello"; // String
$d = true;    // Boolean
$e = NULL;    // NULL

$a = (string) $a;
$b = (string) $b;
$c = (string) $c;
$d = (string) $d;
$e = (string) $e;

//To verify the type of any object in PHP, use the var_dump() function:
var_dump($a);
var_dump($b);
var_dump($c);
var_dump($d);
var_dump($e);
Try it Yourself »

Cast to Integer

To cast to integer, use the (int) statement:

Example

$a = 5;       // Integer
$b = 5.34;    // Float
$c = "25 kilometers"; // String
$d = "kilometers 25"; // String
$e = "hello"; // String
$f = true;    // Boolean
$g = NULL;    // NULL

$a = (int) $a;
$b = (int) $b;
$c = (int) $c;
$d = (int) $d;
$e = (int) $e;
$f = (int) $f;
$g = (int) $g;
Try it Yourself »

Cast to Float

To cast to float, use the (float) statement:

Example

$a = 5;       // Integer
$b = 5.34;    // Float
$c = "25 kilometers"; // String
$d = "kilometers 25"; // String
$e = "hello"; // String
$f = true;    // Boolean
$g = NULL;    // NULL

$a = (float) $a;
$b = (float) $b;
$c = (float) $c;
$d = (float) $d;
$e = (float) $e;
$f = (float) $f;
$g = (float) $g;
Try it Yourself »

Cast to Boolean

To cast to boolean, use the (bool) statement:

Example

$a = 5;       // Integer
$b = 5.34;    // Float
$c = 0;       // Integer
$d = -1;      // Integer
$e = 0.1;     // Float
$f = "hello"; // String
$g = "";      // String
$h = true;    // Boolean
$i = NULL;    // NULL

$a = (bool) $a;
$b = (bool) $b;
$c = (bool) $c;
$d = (bool) $d;
$e = (bool) $e;
$f = (bool) $f;
$g = (bool) $g;
$h = (bool) $h;
$i = (bool) $i;
Try it Yourself »

If a value is 0, NULL, false, or empty, the (bool) converts it into false, otherwise true.

Even -1 converts to true.


Cast to Array

To cast to array, use the (array) statement:

Example

$a = 5;       // Integer
$b = 5.34;    // Float
$c = "hello"; // String
$d = true;    // Boolean
$e = NULL;    // NULL

$a = (array) $a;
$b = (array) $b;
$c = (array) $c;
$d = (array) $d;
$e = (array) $e;
Try it Yourself »

When converting into arrays, most data types converts into an indexed array with one element.

NULL values converts to an empty array object.

Objects converts into associative arrays where the property names becomes the keys and the property values becomes the values:

Example

Converting Objects into Arrays:

class Car {
  public $color;
  public $model;
  public function __construct($color, $model) {
    $this->color = $color;
    $this->model = $model;
  }
  public function message() {
    return "My car is a " . $this->color . " " . $this->model . "!";
  }
}

$myCar = new Car("red", "Volvo");

$myCar = (array) $myCar;
var_dump($myCar);
Try it Yourself »

Cast to Object

To cast to object, use the (object) statement:

Example

$a = 5;       // Integer
$b = 5.34;    // Float
$c = "hello"; // String
$d = true;    // Boolean
$e = NULL;    // NULL

$a = (object) $a;
$b = (object) $b;
$c = (object) $c;
$d = (object) $d;
$e = (object) $e;
Try it Yourself »

When converting into objects, most data types converts into a object with one property, named "scalar", with the corresponding value.

NULL values converts to an empty object.

Indexed arrays converts into objects with the index number as property name and the value as property value.

Associative arrays converts into objects with the keys as property names and values as property values.

Example

Converting Arrays into Objects:

$a = array("Volvo", "BMW", "Toyota"); // indexed array
$b = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43"); // associative array

$a = (object) $a;
$b = (object) $b;
Try it Yourself »

Cast to NULL

To cast to NULL, use the (unset) statement:

Example

$a = 5;       // Integer
$b = 5.34;    // Float
$c = "hello"; // String
$d = true;    // Boolean
$e = NULL;    // NULL

$a = (unset) $a;
$b = (unset) $b;
$c = (unset) $c;
$d = (unset) $d;
$e = (unset) $e;
Try it Yourself »
Pesquisar
Categorias
Leia Mais
Outro
PHP Continue
The continue statement can be used to jump out of the current iteration of a loop, and...
Por PHP Tutorial 2024-05-17 07:52:32 0 4K
Outro
PHP Global Variables - Superglobals
Superglobals were introduced in PHP 4.1.0, and are built-in variables that are always available...
Por PHP Tutorial 2024-05-17 08:08:10 0 10K
Outro
PHP Nested if Statement
Nested If You can have if statements inside if statements, this is...
Por PHP Tutorial 2024-05-17 07:47:26 0 4K
Outro
PHP Data Types
PHP Data Types Variables can store data of different types, and different data types can do...
Por PHP Tutorial 2024-05-17 07:27:24 0 5K
Outro
PHP switch Statement
The switch statement is used to perform different actions based on different...
Por PHP Tutorial 2024-05-17 07:47:56 0 4K
Sociallez https://sociallez.com