コマンドの構文を自分で定義する必要があります。たとえば、禁止について。/ban <username>
- 最初に、メッセージがスラッシュで始まっているかどうかを確認します。もしそうなら、それは命令です。
 
- ここで最初のスペースを検索します。スラッシュの後とスペースの前はすべてコマンド名です。
 
- 最初のスペースの後のすべてをコマンドに渡します。この場合、ユーザー名。このコマンドは、独自にパラメーターを処理します。
 
次のようになります。
$message = '/ban TimWolla';
if (substr($message, 0, 1) === '/') {
    // $message is a command
    $firstSpace = strpos($message, ' ');
    $command = substr($message, 1, $firstSpace);
    $parameters = substr($message, $firstSpace + 1);
    if (!hasPermission($command)) error('Permission denied');
    switch ($command) {
        case 'ban':
            ban($parameters);
        break;
    }
} 
適切な OOP を使用する場合は、各コマンドをクラスにし、すべてのコマンドにインターフェイスを使用して適切なメソッドを要求します。例えば:
interface Command {
    public function setParameters($parameters);
    public function hasPermission();
    public function execute();
}