1

Тема: функция russian_date

В ЦМС есть русский аналог функции php date?

teapplix.com

2

Re: функция russian_date

Нет пока.

Thumbs up Thumbs down

3

Re: функция russian_date

Простой вариант решения.

Создаем файл application/helpers/russian_date_helper.php:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed'); 
    function russian_date($datestr)
    {
        $m = (int)date("m", $datestr);
        $ms = array(
                1=>'января',
                2=>'февраля',
                3=>'марта',
                4=>'апреля',
                5=>'мая',
                6=>'июня',
                7=>'июля',
                8=>'августа',
                9=>'сентября',
                10=>'октября',
                11=>'ноября',
                12=>'декабря');

        return date("d", $datestr) . ' ' . $ms[$m] . ' ' . date("Y", $datestr);
    }

Сохраняем.

Идем в application/config/autoload.php, ищем

$autoload['helper'] = array(

добавляем в список 'russian_date'.

В шаблоне где есть дата, пишем {russian_date($date)}.

Чтобы правильно задать вопрос, нужно знать большую часть ответа.
Платежные реквизиты: YM 41001201374223 || R219555949676 || Z169816711582

4

Re: функция russian_date

Спасибо, работает этот вариант. Только при этом вверху страницы ошибка:

A PHP Error was encountered
Severity: Warning
Message: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at W:\home\imagecms\www\application\helpers\russian_date_helper.php:1)
Filename: libraries/native_session.php
Line Number: 159

Что это означает - в душе не чаю sad

Thumbs up Thumbs down

5

Re: функция russian_date

это значит что вывод текста в браузер уже произошел и хедеры уже не могут после этого отправиться.
Возможно перед открывающим тегом <?php у вас стоит пробел.

Люди меняются, времена меняются, результат остается...

Thumbs up Thumbs down

6

Re: функция russian_date

нет, нету пробела...
Админка вообще не грузится. Выходит та же ошибка плюс еще такая:

A PHP Error was encountered

Severity: Warning

Message: Cannot modify header information - headers already sent by (output started at W:\home\imagecms\www\application\helpers\russian_date_helper.php:1)

Filename: helpers/url_helper.php

Line Number: 543

Thumbs up Thumbs down

7

Re: функция russian_date

В общем то проблему решил.
Вероятно в приведенном примере у skiv была где-то опечатка в первой строке (скорее всего русская буква закралась, так как на глаз не нашел). Взял файл page_helper.php, удалил все, кроме первой строчки, дописал туда функцию из примера и сохранил под именем russian_date_helper.php — все прекрасно заработало.

Thumbs up Thumbs down

8

Re: функция russian_date

У меня почему-то стабильно выводит 01 января 1970
В чем может быть глюк:

Личная документация по ImageCMS: https://goo.gl/LzA09F

9

Re: функция russian_date

Наверняка в вашей невнимательности

Переменная {russian_date($page.publish_date)} выводит правильную дату создания страницы  wink

Разрабатываю модули для ImageCMS Corporate (оплата PayPal).

10

Re: функция russian_date

Sempai пишет:

Наверняка в вашей невнимательности

Переменная {russian_date($page.publish_date)} выводит правильную дату создания страницы  wink

Вставил ваш код. Все еще живу в 1970  cool

Личная документация по ImageCMS: https://goo.gl/LzA09F

11 Отредактировано Роман (09-01-2015 03:38:35)

Re: функция russian_date

Таки из-за невнимательности!
У меня же на странице выводятся не $page, а $item

Вернуло в 2015!

P.S.: Добавил в свою личную копилку решений для ImageCMS (см. подпись).

Личная документация по ImageCMS: https://goo.gl/LzA09F