Создать постоянный формат даты в PHP - PullRequest
0 голосов
/ 08 сентября 2011

Я использовал CI в качестве моей структуры.Как я могу установить постоянный формат даты, чтобы мне не нужно было изменять и искать date("y-m-d") во всех файлах?

Ответы [ 3 ]

3 голосов
/ 08 сентября 2011

Я не попробовал в точности то, что вы просите, но где-то вы сможете использовать функцию define для определения константной строки, соответствующей вашему формату, на которую вы затем сможете ссылаться во всем приложении.

Пример:

define( 'MY_DATE_FORMAT', "y-m-d" );

$date = date( MY_DATE_FORMAT );

Где вы поместите это в CodeIgniter - это совсем другая проблема. Я посмотрю документы и посмотрю, что я смогу найти.

НТН.

РЕДАКТИРОВАТЬ: Нашли эту тему форума на сайте CI: http://codeigniter.com/forums/viewthread/185794/ Это должно помочь вам начать то, что вам нужно сделать.

2 голосов
/ 08 сентября 2011

Поместите это общий заголовочный файл:

define('my_date_format', 'y-m-d');

Чтобы использовать постоянную:

// remember to include the header file first
date(my_date_format);

Для форматирования 2010-11-10 10:12:11 до date(m.d.y):

$myDate = new DateTime('2010-11-10 10:12:11');
$myDate->format('m.d.y');
0 голосов
/ 16 ноября 2012

Я думаю, что когда вы говорите «постоянный» формат даты, вы имеете в виду, что вы хотите получать одинаковый вывод каждый раз, но вам буквально не нужна константа в смысле PHP. Просто напишите свою собственную функцию (или в терминах Codeigniter «помощник»):

// Apply your default format to $format
function display_date($timestamp = NULL, $format = 'y-m-d')
{
    // Possibly do some stuff here, like strtotime() conversion
    if (is_string($timestamp)) $timestamp = strtotime($timestamp);

    // Adjust the arguments and do whatever you want!

    // Use the current time as the default
    if ($timestamp === NULL) $timestamp = time();

    return date($format, $timestamp);
}

Пример использования:

echo display_date(); // Current time
echo display_date($user->last_login); // Formatted unix time
echo display_date('Next Monday'); // Accept strings

Написание вашей собственной функции позволит значительно больше гибкости в будущем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...