/** * factroy * @param integer $number * @return object */ public static function factroy($number = 0) { if (!$number) { return new Slice_Mode_None(); } if (!is_numeric($number)) { throw new Slice_Exception("Slice mode number error"); } self::$_n = $number; return new Slice_Mode_Number_N(); }
/** * factory * @param string $mode "number:2" * @return string */ public static function factory($format = '') { if ($format == '') { return new Slice_Mode_None(); } $format = explode(':', $format); $type = strtolower($format[0]); $mode = strtolower($format[1]); if ($type == 'number') { return Slice_Mode_Number::factroy($mode); } if ($type == 'time') { return Slice_Mode_Time::factroy($mode); } if ($type == 'hash') { return Slice_Mode_Hash::factroy($mode); } // extends other type //throw new Slice_Exception("Slice type $type is not exists"); return new Slice_Mode_None(); }