0
0
PhpConceptBeginner · 3 min read

What is Static Keyword in PHP Class: Explanation and Examples

In PHP, the static keyword is used to declare properties and methods that belong to the class itself, not to any specific object instance. This means you can access static members without creating an object, using ClassName::member syntax.
⚙️

How It Works

Think of a PHP class like a blueprint for making objects, like a cookie cutter for cookies. Normally, each cookie (object) has its own shape and decoration (properties and methods). But when you use the static keyword, it's like having a shared recipe or instruction that all cookies share, no matter which cookie you look at.

Static properties and methods belong to the class itself, not to any single object made from that class. This means you don't need to create an object to use them. Instead, you call them directly on the class. It's like a shared tool in a workshop that everyone can use without needing their own copy.

This is useful when you want to keep track of information or behavior that is common to all objects of that class, or when you want to provide utility functions related to the class but not tied to any object.

💻

Example

This example shows a class with a static property and a static method. We access them without creating an object.

php
<?php
class Counter {
    public static $count = 0;

    public static function increment() {
        self::$count++;
    }
}

Counter::increment();
Counter::increment();
echo Counter::$count;
?>
Output
2
🎯

When to Use

Use static when you need to share data or behavior across all instances of a class or when the data doesn't belong to any single object. For example:

  • Counting how many objects have been created.
  • Creating utility methods that don't need object data, like formatting or calculations.
  • Storing configuration or constants related to the class.

This helps keep your code organized and efficient by avoiding unnecessary object creation.

Key Points

  • Static members belong to the class, not objects.
  • You access static properties and methods using ClassName::member.
  • Inside the class, use self:: to refer to static members.
  • Static methods cannot use $this because they are not tied to an object.
  • Static properties keep their value shared across all uses.

Key Takeaways

The static keyword makes properties and methods belong to the class itself, not objects.
Access static members using ClassName::member without creating an object.
Use static for shared data or utility functions that don't depend on object state.
Inside the class, refer to static members with self::, not $this.
Static properties keep their value shared across all uses of the class.