<?php
class Class1 { static function addMethod() { echo "Class1::add() called!\n"; } }
class Class2 { static function readMethod() { echo "Class2::read() called\n"; } }
"add" => [Class1::class, "addMethod"],
"read"=> [Class2::class, "readMethod"],
);
$keys = ["add", "non-existing", "read"];
foreach($keys as $key) {
} else {
echo "default, nothing called\n";
}
}
PD9waHAKY2xhc3MgQ2xhc3MxIHsgc3RhdGljIGZ1bmN0aW9uIGFkZE1ldGhvZCgpIHsgZWNobyAiQ2xhc3MxOjphZGQoKSBjYWxsZWQhXG4iOyB9IH0KY2xhc3MgQ2xhc3MyIHsgc3RhdGljIGZ1bmN0aW9uIHJlYWRNZXRob2QoKSB7IGVjaG8gIkNsYXNzMjo6cmVhZCgpIGNhbGxlZFxuIjsgfSB9CgokYXJyPWFycmF5KAogICAgImFkZCIgPT4gW0NsYXNzMTo6Y2xhc3MsICJhZGRNZXRob2QiXSwKICAgICJyZWFkIj0+IFtDbGFzczI6OmNsYXNzLCAicmVhZE1ldGhvZCJdLAopOwoKJGtleXMgPSBbImFkZCIsICJub24tZXhpc3RpbmciLCAicmVhZCJdOwoKZm9yZWFjaCgka2V5cyBhcyAka2V5KSB7CglpZihhcnJheV9rZXlfZXhpc3RzKCRrZXksICRhcnIpKSB7CgkJY2FsbF91c2VyX2Z1bmMoJGFyclska2V5XSk7Cgl9IGVsc2UgewoJCWVjaG8gImRlZmF1bHQsIG5vdGhpbmcgY2FsbGVkXG4iOwoJfQp9