3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Полиморфизм :D $objA = [ 'type' => 'A', 'data' => [ 'text' => 'Привет, мир!' ] ]; $objB = [ 'type' => 'B', 'data' => [ 'pieces' => ['Hello', 'world!'] ] ]; printObj($objA); printObj($objB); function printObj($obj) { call_user_func('printObj' . $obj['type'], $obj['data']); } function printObjA($data) { echo $data['text'] . PHP_EOL; } function printObjB($data) { echo implode(', ', $data['pieces']) . PHP_EOL; }

preferences:
38.86 ms | 402 KiB | 5 Q