<?php
interface ConfiguratorDelegate {
public function didSelectOption($option);
}
class ViewController implements ConfiguratorDelegate {
public function didSelectOption($option) {
echo "Selected option";
}
public function __construct() {
$configurator = new Configurator();
$configurator->delegate = $this;
}
}
class Configurator {
public $delegate; // This would be defined as an object that always implements ConfiguratorDelegate
private function optionSelected($option) {
if ($delegate) {
$delegate->didSelectOption($option);
}
}
}
$myVC = new ViewController();