What happens when a PHP class has multiple constructors?

When a PHP class has multiple constructors, only the last constructor defined in the class will be used. To solve this issue, you can create a single constructor with default parameter values to simulate multiple constructors.

class MyClass {
    private $param1;
    private $param2;

    public function __construct($param1 = null, $param2 = null) {
        $this->param1 = $param1;
        $this->param2 = $param2;
    }
}

// Usage
$obj1 = new MyClass(); // Uses default parameter values
$obj2 = new MyClass('value1'); // Sets param1, param2 is null
$obj3 = new MyClass('value1', 'value2'); // Sets both parameters