Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS DSA TYPESCRIPT ANGULAR ANGULARJS GIT POSTGRESQL MONGODB ASP AI R GO KOTLIN SWIFT SASS VUE GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE INTRO TO PROGRAMMING BASH RUST

PHP Tutorial

PHP HOME PHP Intro PHP Install PHP Syntax PHP Comments PHP Variables PHP Echo / Print PHP Data Types PHP Strings PHP Numbers PHP Casting PHP Math PHP Constants PHP Magic Constants PHP Operators PHP If...Else...Elseif PHP Switch PHP Loops PHP Functions PHP Arrays PHP Superglobals PHP RegEx

PHP Forms

PHP Form Handling PHP Form Validation PHP Form Required PHP Form URL/E-mail PHP Form Complete

PHP Advanced

PHP Date and Time PHP Include PHP File Handling PHP File Open/Read PHP File Create/Write PHP File Upload PHP Cookies PHP Sessions PHP Filters PHP Filters Advanced PHP Callback Functions PHP JSON PHP Exceptions

PHP OOP

PHP What is OOP PHP Classes/Objects PHP Constructor PHP Destructor PHP Access Modifiers PHP Inheritance PHP Constants PHP Abstract Classes PHP Interfaces PHP Traits PHP Static Methods PHP Static Properties PHP Namespaces PHP Iterables

MySQL Database

MySQL Database MySQL Connect MySQL Create DB MySQL Create Table MySQL Insert Data MySQL Get Last ID MySQL Insert Multiple MySQL Prepared MySQL Select Data MySQL Where MySQL Order By MySQL Delete Data MySQL Update Data MySQL Limit Data

PHP XML

PHP XML Parsers PHP SimpleXML Parser PHP SimpleXML - Get PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX Intro AJAX PHP AJAX Database AJAX XML AJAX Live Search AJAX Poll

PHP Examples

PHP Examples PHP Compiler PHP Quiz PHP Exercises PHP Server PHP Syllabus PHP Study Plan PHP Certificate

PHP Reference

PHP Overview PHP Array PHP Calendar PHP Date PHP Directory PHP Error PHP Exception PHP Filesystem PHP Filter PHP FTP PHP JSON PHP Keywords PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP Network PHP Output Control PHP RegEx PHP SimpleXML PHP Stream PHP String PHP Variable Handling PHP XML Parser PHP Zip PHP Timezones

PHP Data Types


PHP Data Types

Variables can store data of different types, and different data types can do different things.

PHP supports the following data types:

  • string (text values)
  • int (whole numbers)
  • float (decimal numbers)
  • bool (true or false)
  • array (multiple values)
  • object (stores data as objects)
  • null (empty variable)
  • resource (references external resources)

Use var_dump() to Get the Data Type

To get the data type and the value of a variable, use the var_dump() function.

Example

The var_dump() function dumps the data type and the value:

$x = 5;
var_dump($x); // dumps int(5)
Try it Yourself »

PHP String Data Type

A string is a sequence of characters, like "Hello world!".

Example

$x = 'Hello world!';
var_dump($x);
Try it Yourself »

PHP Int Data Type

An integer data type is a non-decimal number between -2,147,483,648 and 2,147,483,647.

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: decimal (base 10), hexadecimal (base 16), octal (base 8), or binary (base 2) notation

Example

$x = 5985;
var_dump($x);
Try it Yourself »


PHP Float Data Type

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

Example

$x = 10.365;
var_dump($x);
Try it Yourself »

PHP Bool Data Type

A Boolean data type represents two possible states: TRUE or FALSE.

Example

$x = true;
var_dump($x);
Try it Yourself »

Booleans are often used in conditional testing.

You will learn more about conditional testing in the PHP If...Else chapter.


PHP Array Data Type

An array data type stores multiple values in one single variable.

In the following example $cars is an array:

Example

$cars = array("Volvo","BMW","Toyota");
var_dump($cars);
Try it Yourself »

You will learn more about arrays later in this tutorial.


PHP Object Data Type

An object data type holds an instance of a programmer-defined class.

Example

Check the data type of $myCar:

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");
var_dump($myCar);
Try it Yourself »

Do not worry if you do not understand the PHP Object syntax, you will learn more about that in the PHP Classes/Objects chapter.


PHP NULL Data Type

Null is a special data type which can have only one value: NULL.

A variable of data type NULL is a variable that has no value assigned to it.

Tip: If a variable is created without a value, it is automatically assigned a value of NULL.

Variables can also be emptied by setting the value to NULL:

Example

$x = "Hello world!";
$x = null;
var_dump($x);
Try it Yourself »

Changing Data Type

If you assign an integer value to a variable, the data type will automatically be an integer.

If you assign a string to the same variable, the data type will change to a string:

Example

$x = 5;
var_dump($x);

$x = "Hello";
var_dump($x);
Try it Yourself »

If you want to change the data type of an existing variable, but not by changing the value, you can use casting.

Casting allows you to change data type on variables:

Example

$x = 5;
$x = (string) $x;
var_dump($x);
Try it Yourself »

You will learn more about casting in the PHP Casting Chapter.


PHP Resource Data Type

The special resource data type is not an actual data type. It holds a reference to an external resource, such as a database connection or a file handler.

We will not talk about the resource data type here, since it is an advanced topic.



×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
sales@w3schools.com

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
help@w3schools.com

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookies and privacy policy.

Copyright 1999-2025 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.