<?php
class Core_Filter_Ucfirst extends Core_Filter_Abstract
{
    public function filter($value)
    {
        if (!function_exists('mb_strtoupper')) {
            throw new Core_Filter_Exception(sprintf('%s: mbstring is required for this filter'), get_class($this));
        }

        $value = mb_strtoupper(mb_substr($value, 0, 1)) . mb_substr($value, 1);
        return $value;
    }
}