📄 text_plain__dateformat.inc.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 + -