How can PHP developers maintain the association between object properties and their values when passing them to a function?

When passing objects to functions in PHP, developers can maintain the association between object properties and their values by using the object-oriented programming concept of passing objects by reference. This ensures that any changes made to the object within the function are reflected outside of the function as well.

<?php

class MyClass {
    public $property;

    public function __construct($value) {
        $this->property = $value;
    }
}

function updateProperty(MyClass &$object, $newValue) {
    $object->property = $newValue;
}

$myObject = new MyClass('old value');
echo $myObject->property; // Output: old value

updateProperty($myObject, 'new value');
echo $myObject->property; // Output: new value

?>