ACC SHELL
<?php
/**
* This file is part of the Nette Framework (http://nette.org)
*
* Copyright (c) 2004, 2011 David Grudl (http://davidgrudl.com)
*
* For the full copyright and license information, please view
* the file license.txt that was distributed with this source code.
*/
namespace Nette;
use Nette;
/**
* DateTime with serialization and timestamp support for PHP 5.2.
*
* @author David Grudl
*/
class DateTime extends \DateTime
{
/** minute in seconds */
const MINUTE = 60;
/** hour in seconds */
const HOUR = 3600;
/** day in seconds */
const DAY = 86400;
/** week in seconds */
const WEEK = 604800;
/** average month in seconds */
const MONTH = 2629800;
/** average year in seconds */
const YEAR = 31557600;
/**
* DateTime object factory.
* @param string|int|\DateTime
* @return DateTime
*/
public static function from($time)
{
if ($time instanceof \DateTime) {
return clone $time;
} elseif (is_numeric($time)) {
if ($time <= self::YEAR) {
$time += time();
}
return new static(date('Y-m-d H:i:s', $time));
} else { // textual or NULL
return new static($time);
}
}
}
ACC SHELL 2018