library/log4php/pattern/LoggerPatternConverterDate.php
changeset 46 f11c31f7fa3e
parent 45 a56e7f9a0463
child 47 03388ec805b4
deleted file mode 100644
--- a/library/log4php/pattern/LoggerPatternConverterDate.php
+++ /dev/null
@@ -1,91 +0,0 @@
-<?php
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * @package log4php
- */
-
-/**
- * Returns the date/time of the logging request.
- *
- * Option: the datetime format, as used by the date() function. If
- * the option is not given, the default format 'c' will be used.
- *
- * There are several "special" values which can be given for this option:
- * 'ISO8601', 'ABSOLUTE' and 'DATE'.
- *
- * @package log4php
- * @subpackage pattern
- * @version $Revision: 1326626 $
- * @since 2.3
- */
-class LoggerPatternConverterDate extends LoggerPatternConverter {
-
-    const DATE_FORMAT_ISO8601 = 'c';
-
-    const DATE_FORMAT_ABSOLUTE = 'H:i:s';
-
-    const DATE_FORMAT_DATE = 'd M Y H:i:s.u';
-
-    private $format = self::DATE_FORMAT_ISO8601;
-
-    private $specials = array(
-        'ISO8601' => self::DATE_FORMAT_ISO8601,
-        'ABSOLUTE' => self::DATE_FORMAT_ABSOLUTE,
-        'DATE' => self::DATE_FORMAT_DATE,
-    );
-
-    private $useLocalDate = false;
-
-    public function activateOptions() {
-
-        // Parse the option (date format)
-        if (!empty($this->option)) {
-            if (isset($this->specials[$this->option])) {
-                $this->format = $this->specials[$this->option];
-            } else {
-                $this->format = $this->option;
-            }
-        }
-
-        // Check whether the pattern contains milliseconds (u)
-        if (preg_match('/(?<!\\\\)u/', $this->format)) {
-            $this->useLocalDate = true;
-        }
-    }
-
-    public function convert(LoggerLoggingEvent $event) {
-        if ($this->useLocalDate) {
-            return $this->date($this->format, $event->getTimeStamp());
-        }
-        return date($this->format, $event->getTimeStamp());
-    }
-
-    /**
-     * Currently, PHP date() function always returns zeros for milliseconds (u)
-     * on Windows. This is a replacement function for date() which correctly
-     * displays milliseconds on all platforms.
-     *
-     * It is slower than PHP date() so it should only be used if necessary.
-     */
-    private function date($format, $utimestamp) {
-        $timestamp = floor($utimestamp);
-        $ms = floor(($utimestamp - $timestamp) * 1000);
-        $ms = str_pad($ms, 3, '0', STR_PAD_LEFT);
-
-        return date(preg_replace('`(?<!\\\\)u`', $ms, $format), $timestamp);
-    }
-}