Exemplo n.º 1
0
 /**
  * @used-by Df_Admin_Config_Font::applyLetterCase()
  * @param string $text
  * @param string $format
  * @return string
  */
 public static function apply($text, $format)
 {
     /** @var string $result */
     switch ($format) {
         case self::$LOWERCASE:
             $result = mb_strtolower($text);
             break;
         case self::$UPPERCASE:
             $result = mb_strtoupper($text);
             break;
         case self::$UCFIRST:
             $result = df_ucfirst(mb_strtolower(df_trim($text)));
             break;
         case self::$UCWORDS:
             $result = df_ucwords($text);
             break;
         default:
             $result = $text;
     }
     /**
      * Убрал валидацию результата намеренно: сам метод безобиден,
      * и даже если он как-то неправильно будет работать — ничего страшного.
      * Пока метод дал сбой только один раз, в магазине laap.ru
      * при форматировании заголовков административной таблицы товаров
      * (видимо, сбой произошёл из-за влияния некоего стороннего модуля).
      */
     return $result;
 }
Exemplo n.º 2
0
/**
 * 2016-08-10
 * REFUND_ISSUED => RefundIssued
 * refund_issuED => RefundIssued
 * @param string[] ...$args
 * @return string|string[]
 */
function df_underscore_to_camel(...$args)
{
    return df_call_a(function ($s) {
        return implode(df_ucfirst(explode('_', mb_strtolower($s))));
    }, $args);
}
Exemplo n.º 3
0
/**
 * 2016-03-25
 * Применение @uses dfa_flatten() делает возможным вызовы типа:
 * df_cc_class_uc('aa', ['bb', 'cc']) => Aa\Bb\Cc
 * Мы используем это в модулях Stripe и Checkout.com.
 * @see df_cc_class()
 * @param string[] ...$args
 * @return string
 */
function df_cc_class_uc(...$args)
{
    return df_cc_class(df_ucfirst(dfa_flatten($args)));
}