PHP Data Types

Values stored in a variable or in a constant are stored as a specific type of data. PHP provides eight data types.

  1. int: A whole number or integer; numeric values without a decimal point, for example, 2 or 5

  2. float: Floating-point number is a numeric value with decimal point, for example, 2.3

  3. string: A series of characters which are surrounded by either single or double quotes

  4. bool: A Boolean value that can be either true or false

  5. null: A value that represents no value

  6. array: A group of values in one variable

  7. object: A structure created with a class

  8. resource: A reference that identifies a connection

PHP determines the data type automatically. When writing PHP scripts, you don't need to specify which data type you’re storing. The following two statements store different data types:

$var1 = 123;
$var2 = "123";

The value for $var1 is stored as an integer. The value for $var2 is stored as a string because it is enclosed in quotes. You can see when printing the content of the variable with var_dump.

Integers and Floating Numbers

Integers are whole numbers, such as 1, 10, and 333. Integers in PHP are always signed and can therefore store both positive and negative values.

$myInt = 1234; // decimal number

Floating-point numbers, also called real numbers, are numbers that contain a decimal value, such as 3.1 or .667. These can be assigned using either decimal or exponential notation.

$myFloat = 1.234;
$myFloat = 3e2; // 3*10^2 = 300

Character Strings in PHP

A character string is a series of characters. Characters are letters, numbers, and punctuation. When a number is used as a character, it is just a stored character, the same as a letter. It can’t be used in arithmetic. For example, a phone number is stored as a character string because it needs to be only stored - not added or multiplied.

When you store a character string in a variable, you tell PHP where the string begins and ends by using double quotes or single quotes.

Escaping the Character

If you need to tell PHP to interpret the single quote (’) as a part of string instead of as the end of the string, you can do so by using a backslash (\) in front of the single quote. The backslash tells PHP that the single quote doesn’t have any special meaning. This is called escaping the character.

Single vs Double Quotes

Single-quoted strings are stored literally, with the exception of \', which is stored as an apostrophe. In double-quoted strings, variables and some special characters are evaluated before the string is stored.

Case 1: If you enclose a variable in double quotes, PHP uses the value of the variable. However, if you enclose a variable in single quotes, PHP uses the literal variable name. For example,

$month = 12;
$result1 = "$month";
$result2 = '$month';
echo $result1;
echo "<br />";
echo $result2;

The output is


Case 2: Starting a new line

The special characters \n tell PHP to start a new line. When you use double quotes, PHP starts a new line at \n; with single quotes, \n is a literal string.

Case 3: Inserting a tab

The special characters \t tell PHP to insert a tab. When you use double quotes, PHP inserts a tab at \t, but with single quotes, \t is a literal string.

Concatenation: Joining Strings

You can join strings, a process called concatenation, by using a dot (.).

Boolean Data Type

A Boolean data type can only be either true or false. You can assign a Boolean value to a variable as follows:

$myBool = true;

Boolean values are used when comparing values and expressions for conditional statements.

The following values are evaluated as false by PHP:

  • The word false
  • The integer 0
  • The floating-point number 0.0
  • An empty string
  • A string with the value 0
  • An empty array
  • An empty object
  • The value NULL

If a variable contains a value that is not evaluated as false, it is assigned the value true.

Null Type

The case-insensitive constant null is used to represent a variable with no value.

$myNull = null; // variable is set to null

The null value evaluates differently, depending on the context in which the variable is used. If evaluated as a bool, it becomes false; as a number, it becomes zero (0); and as a string, it becomes an empty string ("").

In PHP, it is possible to use variables that have not been assigned a value. Such undefined variables are then automatically created with the null value.

echo $myUndefined; // variable is set to null


Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive