Пример #1
0
 /**
  * @override
  * @param string $value
  * @return bool
  */
 public function isValid($value)
 {
     $this->prepareValidation($value);
     /**
      * Избавляет от сбоев типа
      * «Система не смогла распознать значение «368.» типа «string» как вещественное число.»
      * http://magento-forum.ru/topic/4648/
      * Другими словами, думаю, что будет правильным
      * конвертировать строки типа «368.» в вещественные числа без сбоев.
      *
      * Обратите внимание, что 368.0 === floatval('368.'),
      * поэтому функция @see df_float()
      * сконвертирует строку «368.» в вещественное число без проблем.
      */
     if (is_string($value) && df_ends_with($value, '.') && '.' !== $value) {
         $value .= '0';
     }
     return $this->getZendValidator('en_US')->isValid($value) || $this->getZendValidator('ru_RU')->isValid($value);
 }
Пример #2
0
 /**
 * Возвращает соответствие между числовыми кодами,
 * возвращаемыми функцией @see preg_last_error(),
 * и их символьными соответствиями:
 		PREG_NO_ERROR
 		PREG_INTERNAL_ERROR
 		PREG_BACKTRACK_LIMIT_ERROR
 		PREG_RECURSION_LIMIT_ERROR
 		PREG_BAD_UTF8_ERROR
 		PREG_BAD_UTF8_OFFSET_ERROR
 * @return array(int => string)
 */
 private static function getErrorCodeMap()
 {
     /** @var array(int => string) $result */
     static $result;
     if (!$result) {
         /** @var array(string => array(string => int)) $constants */
         $constants = get_defined_constants(true);
         foreach ($constants['pcre'] as $textCode => $numericCode) {
             /** @var string $textCode */
             /** @var int $numericCode */
             if (df_ends_with($textCode, '_ERROR')) {
                 $result[$numericCode] = $textCode;
             }
         }
     }
     return $result;
 }
Пример #3
0
 /**
  * 2016-07-31
  * @return bool
  */
 private function isClosure()
 {
     if (!isset($this->{__METHOD__})) {
         $this->{__METHOD__} = df_ends_with($this->functionName(), '{closure}');
     }
     return $this->{__METHOD__};
 }
Пример #4
0
/**
 * 2016-03-08
 * Добавляет к строке $s окончание $tail,
 * если она в этой строке отсутствует.
 * @param string $s
 * @param string $tail
 * @return string
 */
function df_append($s, $tail)
{
    return df_ends_with($s, $tail) ? $s : $s . $tail;
}