⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 text_plain__dateformat.inc.php

📁 一个用PHP编写的
💻 PHP
字号:
<?php/* vim: set expandtab sw=4 ts=4 sts=4: *//** * * @version $Id: text_plain__dateformat.inc.php 11084 2008-01-27 14:07:50Z lem9 $ *//** * */function PMA_transformation_text_plain__dateformat($buffer, $options = array(), $meta = '') {    // possibly use a global transform and feed it with special options:    // include './libraries/transformations/global.inc.php';    // further operations on $buffer using the $options[] array.    if (empty($options[0])) {        $options[0] = 0;    }    if (empty($options[2])) {        $options[2] = 'local';    } else {        $options[2] = strtolower($options[2]);    }    if (empty($options[1])) {        if ($options[2] == 'local') {            $options[1] = $GLOBALS['datefmt'];        } else {            $options[1] = 'Y-m-d  H:i:s';        }    }    $timestamp = -1;    // INT columns will be treated as UNIX timestamps    // and need to be detected before the verification for    // MySQL TIMESTAMP    if ($meta->type == 'int') {        $timestamp = $buffer;    // Detect TIMESTAMP(6 | 8 | 10 | 12 | 14)    // TIMESTAMP (2 | 4) not supported here.    // (Note: prior to MySQL 4.1, TIMESTAMP has a display size, for example    // TIMESTAMP(8) means YYYYMMDD)    } else if (preg_match('/^(\d{2}){3,7}$/', $buffer)) {        if (strlen($buffer) == 14 || strlen($buffer) == 8) {            $offset = 4;        } else {            $offset = 2;        }        $d = array();        $d['year']   = substr($buffer, 0, $offset);        $d['month']  = substr($buffer, $offset, 2);        $d['day']    = substr($buffer, $offset + 2, 2);        $d['hour']   = substr($buffer, $offset + 4, 2);        $d['minute'] = substr($buffer, $offset + 6, 2);        $d['second'] = substr($buffer, $offset + 8, 2);        if (checkdate($d['month'], $d['day'], $d['year'])) {            $timestamp = mktime($d['hour'], $d['minute'], $d['second'], $d['month'], $d['day'], $d['year']);        }    // If all fails, assume one of the dozens of valid strtime() syntaxes (http://www.gnu.org/manual/tar-1.12/html_chapter/tar_7.html)    } else {        if (preg_match('/^[0-9]\d{1,9}$/', $buffer)) {            $timestamp = (int)$buffer;        } else {            $timestamp = strtotime($buffer);        }    }    // If all above failed, maybe it's a Unix timestamp already?    if ($timestamp < 0 && preg_match('/^[1-9]\d{1,9}$/', $buffer)) {        $timestamp = $buffer;    }    // Reformat a valid timestamp    if ($timestamp >= 0) {        $timestamp -= $options[0] * 60 * 60;        $source = $buffer;        if ($options[2] == 'local') {            $text = PMA_localisedDate($timestamp, $options[1]);        } elseif ($options[2] == 'utc') {            $text = gmdate($options[1], $timestamp);        } else {            $text = 'INVALID DATE TYPE';        }        $buffer = '<dfn onclick="alert(\'' . $source . '\');" title="' . $source . '">' . $text . '</dfn>';    }    return $buffer;}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -