Форуми / National / Russian / Тех. поддержка / Запросы документации

Принимаем вопросы от населения

Kopusha
#46602 06.05.2023 06:43
#46600 Kabak:

модуль users

{USERS_ROW_REGDATE|cot_date('j F Y', $this)}

такая же история 

Дам тебе такой совет - ты никогда не поймешь логику не попробовав думать самому а спрашивая на форуме. И есть идеальный {PHP|dump}.
Например поискать где формируются все теги юзера - в https://github.com/Cotonti/Cotonti/blob/master/system/functions.php#L2443

Там смотриш 2 строки - 

				'REGDATE' => cot_date('datetime_medium', $user_data['user_regdate']),
				'REGDATE_STAMP' => $user_data['user_regdate'],

верхняя берет из БД циферки $user_data['user_regdate'] в секундах "сколько прошло с 1 января 1970 года" (169008763) и преобразовывает функцией cot_date в читабельный текст. Открыв функцию cot_date можно понять что такое параметр datetime_medium и если надо - найти а то и переписать под себя.

Вторая строка - REGDATE_STAMP отдаст просто запись из БД 169008763 и уже в TPL можно например

{REGDATE_STAMP|cot_date('date_full', $this)} 

Тебе же ничего не мешает в TPL попробовать одно другое и изучить - с форума ты максимум что то одно вынесешь и дальше ничего не будеш знать.

 

PS естественно если в php или TPL у тебя конструкция в цикле - то надо не {REGDATE_STAMP|cot_date('date_full', $this)}  а как то через ЧТОЭТОТАКОЕ_ROW_ТЕГИЗФУНКЦИИ - то есть {USERS_ROW_REGDATE_STAMP|cot_date('date_full', $this)}  а просто {REGDATE_STAMP|cot_date('date_full', $this)}  не сработает

Added 3 minutes later:

Пользуясь случаем тут на всякий переспрошу - конструкция в этой функции

if (isset($user_cache[$user_id]))
	{
		$temp_array = $user_cache[$user_id];
	}

означает что если на 1 загруженной странице есть десятки выводов инфо по конкретному юзеру - запрос в БД будет один, сформируется $user_cache[$user_id] и 2-3-10 раз уже из него будет взято?