コード例 #1
0
ファイル: validation.php プロジェクト: mage2pro/core
/**
 * @param mixed $v
 * @return int
 * @throws DFE
 */
function df_01($v)
{
    /** @var int $result */
    $result = df_int($v);
    df_assert_in($result, [0, 1]);
    return $result;
}
コード例 #2
0
ファイル: date.php プロジェクト: mage2pro/core
/**
 * Создаёт объект-дату по строке вида «20131115153657».
 * @param string $timestamp
 * @param string|null $offsetType [optional]
 * @return ZD
 */
function df_date_from_timestamp_14($timestamp, $offsetType = null)
{
    df_assert(ctype_digit($timestamp));
    df_assert_eq(14, strlen($timestamp));
    // Почему-то new Zend_Date($timestamp, 'yMMddHHmmss') у меня не работает
    /** @var string $pattern */
    $pattern = '#(\\d{4})(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})#';
    /** @var int[] $matches */
    $matches = [];
    /** @var int $r */
    $r = preg_match($pattern, $timestamp, $matches);
    df_assert_eq(1, $r);
    /** @var int $hour */
    $hour = df_nat0(dfa($matches, 4));
    if ($offsetType) {
        df_assert_in($offsetType, ['UTC', 'GMT']);
        /** @var int $offsetFromGMT */
        $offsetFromGMT = df_round(df_int(df_dts(ZD::now(), ZD::TIMEZONE_SECS)) / 3600);
        $hour += $offsetFromGMT;
        if ('UTC' === $offsetType) {
            $hour++;
        }
    }
    return new ZD(['year' => dfa($matches, 1), 'month' => dfa($matches, 2), 'day' => dfa($matches, 3), 'hour' => $hour, 'minute' => dfa($matches, 5), 'second' => dfa($matches, 6)]);
}
コード例 #3
0
ファイル: NumberInWords.php プロジェクト: mage2pro/core
 /**
  * @param int $number
  * @param string $gender
  * @return string
  */
 private function getNaturalNumberInWords($number, $gender)
 {
     df_param_integer($number, 0);
     df_param_between($number, 0, 0, self::MAX_NUMBER);
     df_param_string($gender, 1);
     df_assert_in($gender, [self::GENDER__MALE, self::GENDER__FEMALE]);
     /** @var string $result */
     $result = 'ноль';
     if (0 !== $number) {
         $result = preg_replace(['/s+/', '/\\s$/'], [' ', ''], $this->getNum1E9($number, $gender));
     }
     df_result_string($result);
     return $result;
 }