<?php

class Util {

    private $logger;

    public function __construct(){} 

    public function getLogger() {    
        return $this->logger;
    }

    public function setLogger($logger) { 

        $this->logger = $logger;
    }
}

$util = new Util();

  $util->setLogger(new class {
    public function log($msg) {
      echo $msg;
    }
  });

  $util->getLogger()->log('Phil runs very fast'); // Ioutput should be : Phil runs very fast
