Я создаю API, где пользователь запрашивает "команду", которая передается в класс. Предполагая, что команда соответствует функции PUBLIC, она будет выполнена успешно. Если команда соответствует функции PROTECTED, ей необходимо выдать ошибку.
Идея состоит в том, что функции можно отключить, изменив их с PUBLIC на PROTECTED, вместо того, чтобы переименовывать их или удалять.
В настоящее время я делаю это, но неважно, является ли команда общедоступной или защищенной.
<?php
/**
* Look for Command method
*/
$sMethod = "{$sCommand}Command";
if (method_exists($this, $sMethod))
{
/**
* Run the command
*/
return $this->$sMethod($aParameters);
}