<?php


class DataHolder {
    protected array $data = [];

    public function setData(array $data) {
        $this->data = $data;
    }

    public function &getData() {
        return $this->data;
    }
}

$dataHolder = new DataHolder();

// Nastavení dat pomocí setData()
$data = [1, 2, 3];
$dataHolder->setData($data);

// Získání dat pomocí getData()
$referenceToData = &$dataHolder->getData();

// Změna dat přímo pomocí reference
$referenceToData[0] = 100;

// Data jsou změněna i v objektu $dataHolder
var_dump($dataHolder->getData()); // Vypíše: [100, 2, 3]