58 PHP Keywords That Every Programmer Should Know

Download Now: Free WordPress Website Guide + Checklist
Clint Fontanella
Clint Fontanella

Published:

PHP, or "Hypertext Preprocessor," is the backbone of countless dynamic web applications and websites. And, at its core, PHP relies on a set of fundamental building blocks called keywords which wield immense power in shaping the behavior of your code.

programmer working with PHP keywords

PHP keywords enable developers to write efficient, maintainable, and powerful code. In fact, you can’t get too far in PHP without picking up what these elements are and what they do for your programs.Build your website with HubSpot's Free CMS Software

In this post, we've compiled a comprehensive list of PHP keywords so you can quickly review what each one does as well as an example of it being used in action.

Scroll down to review each one individually, or use the table below to jump to a specific one.

PHP Keywords List

1. and

This is a logical operator used for combining two conditions. It returns true if both conditions are true, and false if otherwise.

Example:

<?php

$x = 5;

$y = 10;

if ($x > 0 and $y > 0) {

echo "Both conditions are true.";

} else {

echo "At least one condition is false.";

}

?>

Output:

Both conditions are true.

2. array

This keyword creates an array, which is a collection of values stored under a single variable name.

Example:

<?php

$fruits = array("apple", "banana", "cherry");

echo "Fruits: " . implode(", ", $fruits);

?>

Output:

Fruits: apple, banana, cherry

3. break

The break keyword exits a loop prematurely.

Example:

<?php

for ($i = 1; $i <= 5; $i++) {

if ($i == 3) {

break;

}

echo $i . " ";

}

?>

Output:

1 2

4. print

The print construct ​​outputs a string or variable to the web page. Unlike echo, this keyword includes parentheses and is less commonly used in modern PHP.

Example:

<?php

$message = "Hello, World!";

print($message);

?>

Output:

Hello, World!

5. class

This is used to define a class in object-oriented programming.

Example:

<?php

class Car {

public $make;

public $model;

public function start() {

echo "Car is starting.";

}

}

$myCar = new Car();

$myCar->start();

?>

Output:

Car is starting.

6. const

This keyword defines a constant value that cannot be changed.

Example:

<?php

const PI = 3.14159;

echo "The value of PI is " . PI;

?>

Output:

The value of PI is 3.14159

7. continue

The continue keyword skips the current iteration in a loop and continues with the next iteration.

Example:

<?php

for ($i = 1; $i <= 5; $i++) {

if ($i == 3) {

continue;

}

echo $i . " ";

 }

?>

Output:

1 2 4 5

8. declare

This is used to set execution directives and can be used to set strict types.

Example:

<?php

declare(strict_types=1);

function add(int $a, int $b) {

echo $a + $b;

}

add(5, 3);

?>

Output:

8

9. die

This keyword terminates the script and displays a message to the user.

Example:

<?php

$error_message = "An error occurred.";

die($error_message);

?>

Output:

An error occurred.

10. echo

This keyword outputs text or variables to the web page.

Example:

<?php

$message = "Hello, World!";

echo $message;

?>

Output:

Hello, World!

11. if

This is used for conditional execution of code. It executes a block of code if a specified condition is true

Example:

<?php

 $x = 10;

if ($x > 5) {

echo "x is greater than 5.";

} else {

echo "x is not greater than 5.";

}

?>

Output:

x is greater than 5.

12. else

This keyword is used in an if statement to define the block of code that will be executed if the condition is false.

Example:

<?php

$x = 5;

if ($x > 10) {

echo "Condition is true.";

} else {

echo "Condition is false.";

}

?>

Output:

Condition is false.

13. elseif

This keyword adds multiple conditions to an if statement.

Example:

<?php

$x = 15;

if ($x < 10) {

echo "X is less than 10.";

} elseif ($x > 10) {

echo "X is greater than 10.";

} else {

echo "X is equal to 10.";

}

?>

Output:

X is greater than 10.

14. switch

The switch keyword is used for conditional control flow. It allows you to test a variable against multiple possible values and execute different code blocks based on the matching case.

Example:

<?php

$day = "Monday";

switch ($day) {

case "Monday":

echo "It's the start of the week.";

break;

case "Friday":

echo "It's almost the weekend.";

break;

default:

echo "It's a regular day."; }

?>

Output:

It's the start of the week.

15. case

This keyword is used within a switch statement to define different possible values for the evaluated expression.

Example:

<?php

$day = "Monday";

switch ($day) {

case "Monday":

echo "It's the start of the week.";

break;

case "Friday":

echo "It's almost the weekend.";

break;

default:

echo "It's a regular day."; }

?>

Output:

It's the start of the week.

16. empty

The empty keyword checks if a variable is empty or if a value exists.

Example:

<?php

$name = "";

if (empty($name)) {

echo "Name is empty.";

} else {

echo "Name is not empty.";

}

?>

Output:

Name is empty.

17. eval

This evaluates a string as PHP code.

Example:

<?php

$x = 5;

$y = 10;

$result = eval("echo \$x + \$y;");

?>

Output:

15

18. exit

This keyword terminates the script and displays a message to the user.

Example:

<?php

$error_message = "An error occurred.";

exit($error_message);

?>

Output:

An error occurred.

19. for

This keyword is used to create a loop that executes a block of code a specified number of times.

Example:

<?php

for ($i = 0; $i < 5; $i++) {

echo $i . " ";

}

?>

Output:

0 1 2 3 4

20. foreach

This keyword is used to loop through elements in an array or other iterable.

Example:

<?php

$fruits = ["apple", "banana", "cherry"];

foreach ($fruits as $fruit) {

echo $fruit . " ";

}

?>

Output:

apple banana cherry

21. finally

The finally keyword is used in exception handling to specify code that should be executed regardless of whether an exception is thrown or not.

Example:

<?php

try {

$numerator = 10;

$denominator = 0;

if ($denominator === 0) {

throw new Exception("Division by zero is not allowed.");

}

$result = $numerator / $denominator;

echo "Result: $result";

} catch (Exception $e) {

echo "Caught an exception: " . $e->getMessage();

} finally {

echo "\nFinally block executed.";

}

echo "\nAfter try-catch-finally block.";

?>

Output:

Caught an exception: Division by zero is not allowed. Finally block executed. After try-catch-finally block.

22. function

This defines a reusable block of code that can be called with a specific name.

Example:

<?php

function greet($name) {

echo "Hello, $name!";

}

greet("Alice");

?>

Output:

Hello, Alice!

23. include

This keyword is used to include and evaluate a specified file.

Example:

<?php

include("header.php");

?>

Output:

The specified file is evaluated.

24. include_once

Similar to include, this keyword ensures that the file is only included once.

Example:

<?php

include_once("config.php");

?>

Output:

The specified file is only included once.

25. instanceof

Similar to include, this keyword ensures that the file is only included once.

Example:

<?php

class Car {

public $make;

public $model;

public function __construct($make, $model) {

$this->make = $make;

$this->model = $model;

}

}

$car = new Car("Toyota", "Camry");

if ($car instanceof Car) {

echo "It's a Car object. Make: {$car->make}, Model: {$car->model}";

} else {

echo "It's not a Car object.";

}

?>

Output:

It's a Car object. Make: Toyota, Model: Camry

26. namespace

This keyword defines a namespace for a set of codes. Namespaces help developers avoid naming conflicts.

Example:

<?php

namespace MyNamespace;

class MyClass {

public $name;

public function __construct($name) {

$this->name = $name;

}

public function greet() {

return "Hello, {$this->name}!";

}

}

$myObject = new MyClass("Alice");

$greeting = $myObject->greet();

echo $greeting;

?>

Output:

Hello, Alice!

27. new

The new keyword creates a new instance of a class, which allows you to create objects based on that class's blueprint.

Example:

<?php

class Car {

public $make;

public function __construct($make) {

$this->make = $make;

}

}

$myCar = new Car("Toyota");

echo "My car is a {$myCar->make}.";

?>

Output:

My car is a Toyota.

28. or

This is a logical operator used for combining two conditions. It returns true if at least one of the conditions is true.

Example:

<?php

$x = 5;

$y = 10;

if ($x > 0 or $y > 0) {

echo "At least one condition is true.";

} else {

echo "Both conditions are false.";

}

?>

Output:

At least one condition is true.

29. xor

This is also a logical operator used for combining two conditions. It returns true if exactly one of the conditions is true.

Example:

<?php

$a = true;

$b = false;

if ($a xor $b) {

echo "Exactly one condition is true.";

} else {

echo "Either both conditions are true or both are false.";

}

?>

Output:

Exactly one condition is true.

30. return

This is used within a function to specify a value to be returned when the function is called.

Example:

<?php

function add($a, $b) {

return $a + $b;

}

$result = add(5, 3);

echo "The result is: $result";

?>

Output:

The result is: 8

31. throw

This manually throws an exception in PHP. Exceptions are used for error handling.

Example:

<?php

function divide($a, $b) {

if ($b === 0) {

throw new Exception("Division by zero is not allowed.");

}

return $a / $b;

}

try {

$result = divide(10, 0);

echo "Result: $result";

} catch (Exception $e) {

echo "Error: " . $e->getMessage();

}

?>

Output:

ERROR!

Error: Division by zero is not allowed.

32. try

The try keyword encloses a block of code that may throw exceptions. It is followed by one or more catch blocks for exception handling.

Example:

<?php

function divide($a, $b) {

if ($b === 0) {

throw new Exception("Division by zero is not allowed.");

}

return $a / $b;

}

try {

$result = divide(10, 0);

echo "Result: $result";

} catch (Exception $e) {

echo "Error: " . $e->getMessage();

}

?>

Output:

ERROR!

Error: Division by zero is not allowed.

33. catch

The catch keyword is used in conjunction with try to catch and handle exceptions that are thrown in the try block.

Example:

<?php

function divide($a, $b) {

if ($b === 0) {

throw new Exception("Division by zero is not allowed.");

}

return $a / $b;

}

try {

$result = divide(10, 0);

echo "Result: $result";

} catch (Exception $e) {

echo "Error: " . $e->getMessage();

}

?>

Output:

ERROR!

Error: Division by zero is not allowed.

34. use

This is used for importing namespaces and classes, allowing you to use them without fully qualifying their names.

Example:

<?php

use MyNamespace\MyClass;

$myObject = new MyClass();

echo "Used MyClass from MyNamespace.";

?>

Output:

Used MyClass from MyNamespace

35. while

This creates a loop that repeatedly executes a block of code as long as a specified condition is true.

Example:

<?php

$i = 1;

while ($i <= 5) {

echo $i . " "; $i++;

}

?>

Output:

1 2 3 4 5

36. unset

The unset keyword removes variables. It can also be used to unset elements in an array.

Example:

<?php

$x = 10;

unset($x);

echo isset($x) ? "Variable is set." : "Variable is not set.";

?>

Output:

Variable is not set.

37. abstract

This keyword declares an abstract class or abstract method. Abstract classes cannot be instantiated, and abstract methods must be implemented by child classes.

Example:

<?php

abstract class Shape {

abstract public function getArea();

}

class Circle extends Shape {

public function getArea() {

return 3.14;

}

}

$circle = new Circle();

$area = $circle->getArea();

echo "The area of the circle is: " . $area;

?>

Output:

The area of the circle is: 3.14

38. callable

This is used to specify that a variable can hold a callable function, method, or closure.

Example:

<?php

function process(callable $callback) {

$result = $callback();

echo "Result: $result";

}

$myFunction = function () {

return "Hello, World!";

};

process($myFunction);

?>

Output:

Result: Hello, World!

39. clone

The clone keyword creates a copy of an object. It's typically used with objects created from classes.

Example:

<?php

class MyClass {

public $name;

}

$original = new MyClass();

$original->name = "Original Object";

$copy = clone $original;

echo $copy->name;

?>

Output:

Original Object

40. final

This keyword indicates that a class or method can’t be extended or overridden by child classes.

Example:

<?php

final class FinalClass {

 // Class code 

}

class ChildClass /* Error: Cannot extend final class */ {

 // Class code 

}

?>

Output:

This creates a standalone class that can‘t be overridden by a child class.

41. implements

This keyword is used in class declarations to specify that the class implements one or more interfaces.

Example:

<?php

interface Printable {

public function printInfo();

} class Book implements Printable {

public function printInfo() {

echo "This is a book.";

}

}

$book = new Book();

$book->printInfo();

?>

Output:

This is a book.

42. interface

This keyword declares an interface, which defines a contract for methods that implementing classes must follow.

Example:

<?php

interface Printable {

public function printInfo();

} class Document implements Printable {

public function printInfo() {

echo "This is a document.";

}

}
$document = new Document();

$document->printInfo();

?>

Output:

This is a document.

43. private

This keyword is an access modifier used in class properties and methods. It restricts access to the property or method to only within the class that defines it.

Example:

<?php

class MyClass {

private $myPrivateProperty = "This is private.";

private function myPrivateMethod() {

echo "This is a private method.";

}

public function accessPrivate() {

return $this->myPrivateProperty;

}

}

$object = new MyClass();

echo "Private Property: " . $object->accessPrivate() . "\n";

?>

Output:

Private Property: This is private.

44. protected

This is also an access modifier used in class properties and methods. It restricts access to the property or method to the class that defines it and its subclasses.

Example:

<?php

class ParentClass {

protected $myProtectedProperty = "This is protected.";

}

class ChildClass extends ParentClass {

public function displayProperty() {

echo $this->myProtectedProperty;

}

}

$child = new ChildClass();

$child->displayProperty();

?>

Output:

This is protected.

45. public

This is another access modifier used in class properties and methods. It allows unrestricted access from anywhere.

Example:

<?php

class MyClass {

public $myPublicProperty = "This is public.";

public function myPublicMethod() {

echo "This is a public method.";

}

}

$object = new MyClass();

echo $object->myPublicProperty; // Accessing the public property. 

$object->myPublicMethod();

?>

Output:

This is public.This is a public method.

46. static

This declares properties and methods that belong to the class rather than an instance of the class. They can be accessed without creating an instance.

Example:

<?php

class MathUtility {

public static function add($a, $b) {

return $a + $b;

}

}

$result = MathUtility::add(3, 5);

echo "The result of the addition is: " . $result;

?>

Output:

The result of the addition is: 8

47. yield

This is used in the context of generators. It allows a function to yield values one at a time, instead of returning an entire array of values.

Example:

<?php

function generateNumbers() {

yield 1;

yield 2;

yield 3;

}

foreach (generateNumbers() as $number) {

echo $number . " ";

}

?>

Output:

1 2 3

48. global

The global keyword is used to access a global variable from within a function or method.

Example:

<?php

$globalVar = 42;

function accessGlobalVar() {

global $globalVar;

echo "The global variable is: " . $globalVar;

}

accessGlobalVar();

?>

Output:

The global variable is: 42

49. list

This assigns values from an array to a list of variables. It's often used to quickly extract values from an array.  

Example:

<?php

$person = ["John", "Doe", 30];

list($firstName, $lastName, $age) = $person;

echo "First Name: $firstName, Last Name: $lastName, Age: $age";

?>

Output:

First Name: John, Last Name: Doe, Age: 30

50. require

This keyword includes a file in PHP. If the file is not found, it will result in a fatal error and stop script execution.

Example:

<?php

require "config.php";

?>

Output:

Includes specified file, or produces error if file is not found.

51. require_once

Similar to require, this checks if the file has been included previously to prevent duplicate inclusions.

Example:

<?php

require_once "config.php";

?>

Output:

The global variable is: 42

52. insteadof

This keyword is used in trait aliasing. It resolves conflicts when multiple traits use the same method name.

Example:

<?php

trait Trait1 {

public function sayHello() {

echo "Hello from Trait1";

}

}

trait Trait2 {

public function sayHello() {

echo "Hello from Trait2";

}

}

class MyClass {

use Trait1, Trait2 {

Trait1::sayHello insteadof Trait2;

}

}

$object = new MyClass();

$object->sayHello();

?>

Output:

Hello from Trait1

53. trait

This keyword defines a reusable set of methods that can be used in multiple classes. It's similar to a class but cannot be instantiated on its own.

Example:

<?php

trait Logging {

public function log($message) {

echo "Log: $message";

}

}

class MyClass {

use Logging;

}

$object = new MyClass();

$object->log("Logging a message.");

?>

Output:

Log: Logging a message.

54. goto

This is a jump statement in PHP, allowing you to jump to another part of the code based on a label.

Example:

<?php

for ($i = 0; $i < 10; $i++) {

if ($i === 5) {

goto myLabel;

}

}

myLabel: echo "Jumped to the label.";

?>

Output:

Jumped to the label.

55. endfor

The endfor keyword terminates a for loop.

Example:

<?php

for ($i = 1; $i <= 5; $i++) {

echo "Iteration $i\n";

} // The 'endfor' keyword can be used to mark the end of the 'for' loop. endfor;

?>

Output:

Iteration 1

Iteration 2

Iteration 3

Iteration 4

Iteration 5

56. endforeach

This keyword terminates a foreach loop in PHP. It signifies the conclusion of the loop's execution.

Example:

<?php

 $colors = array("red", "green", "blue");

foreach ($colors as $color):

echo "Color: $color\n";

endforeach;

?>

Output:

Color: red

Color: green

Color: blue

57. endif

This keyword terminates an if statement or conditional block.

Example:

<?php

$condition = true;

if ($condition):

echo "Condition is true.\n";

endif;

echo "This is outside the 'if' block.\n";

?>

Output:

Condition is true.

This is outside the 'if' block.

58. __halt_compiler

This keyword is used in combination with the __halt_compiler() function to mark the end of a script and instruct the PHP parser not to process any code beyond this point.

Example:

<?php

// Some PHP code here 

// Data or binary content can be placed here

__halt_compiler(); 

This content will not be processed by the PHP parser.

?>

Output:

The code featured after halt_compiler will not be parsed.

Keeping Track of PHP Keywords

Keywords are the building blocks of any programming language, so keeping this list handy will make it easier to reference them as needed over time. The more experience you develop with PHP, the faster you’ll be at recalling each of these keywords and using them to your advantage. Bookmark this page to keep it readily accessible, and continue strengthening your PHP skills throughout your programming journey.content hub

Related Articles

We're committed to your privacy. HubSpot uses the information you provide to us to contact you about our relevant content, products, and services. You may unsubscribe from these communications at any time. For more information, check out our Privacy Policy.

Launch your WordPress website with the help of this free guide and checklist.

CMS Hub is flexible for marketers, powerful for developers, and gives customers a personalized, secure experience

START FREE OR GET A DEMO