Объединение двух php-кодов в один. Дата и время php

niko_viktor
На сайте с 11.06.2009
Offline
41
1015

Здравствуйте, не хотел создавать новую тему, но не нашел похожей чтобы там спросить.

Есть php-код вывода даты с вычетом рандомного промежутка времени. Всё работает:

<span class="updated">
<abbr class="published" title="<?php $num=mt_rand(28800,29100); echo date( 'Y-m-d\TH:i:s\Z', time()-$num ); ?>"><?php $num=mt_rand(28800,29100); echo date( 'j.m.Y в H:i', time()-$num ); ?></abbr>
</span>

Это микроформат для Гугла, состоящий из атрибута title и непосредственного вывода даты на страницу. Между ними участок html кода:

">

Кто поможет объединить эти два php кода в один <?php ;?> ?

KNEP.ru (https://knep.ru/) - мой блог Кнеп.ру
C
На сайте с 04.02.2005
Offline
291
#1

<abbr class="published" title="<?php $num=date('Y-m-d\TH:i:s\Z', time() - mt_rand(28800,29100)); echo $num;  echo '">'; echo $num ?></abbr>

Если не ошибся со скобками и кавычками, то, наверное, вот так.

SeVlad
На сайте с 03.11.2008
Offline
1609
#2
Chukcha:
Если не ошибся со скобками и кавычками,

;) только не хило так подрезал

ТС, как-то так наверное (не проверял)

<abbr class="published" title="<?php $num=mt_rand(28800,29100); echo date( 'Y-m-d\TH:i:s\Z', time()-$num ). '">'; $num=mt_rand(28800,29100); echo date( 'j.m.Y в H:i', time()-$num ); ?></abbr>
Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
C
На сайте с 04.02.2005
Offline
291
#3

SeVlad, м...

так я сразу одно число получил

зы не проверял

SeVlad
На сайте с 03.11.2008
Offline
1609
#4
Chukcha:
так я сразу одно число получил

аа. да. сорри. Я не вкурил, что ты через вывод $num сделал. Просто я по диагонали взглянул - вижу половины кода нет ;)

C
На сайте с 04.02.2005
Offline
291
#5

А че разбазариваться случайными числами и текущим временем?

SeVlad
На сайте с 03.11.2008
Offline
1609
#6
Chukcha:
А че разбазариваться случайными числами и текущим временем?

А кста, разве второе вычисление не изменит значение $num? По-моему изменит. А значит твой вариант уже не так работает, как у ТСа. Не?

АПД. Там и форматы вывода разные.

АПД2 Что-то воще ерунда выходит, если тайтл будет отличатся от текста.. В общем пора спать, завтра со свежей головой.

Ида, эхами, идущими друг-за-другом "чё разбазариваться"? ;)

C
На сайте с 04.02.2005
Offline
291
#7

естественно, не как у ТС, но однозначно.

а пох сколько эх... достаточно одного тика.

SeVlad
На сайте с 03.11.2008
Offline
1609
#8
SeVlad:
Что-то воще ерунда выходит, если тайтл будет отличатся от текста.. В общем пора спать, завтра со свежей головой.

И вот я тут. ;)

ТС, у тебя какая-то хренотень в коде написана. Уверен, что тебе нужен такой результат:

<abbr class="published" title="2013-07-20T04:37:54Z">20.07.2013 в 04:40</abbr></abbr>

??

Обрати внимание на тайтл и разницу в цифрах (о чём я выше и говорил).

Если делать нормально, то вот как-то так:

<span class="updated">
<abbr class="published" title="<?php $num=mt_rand(28800,29100); echo date( 'Y-m-d T H:i:s Z', time()-$num ).'">'. date( 'j.m.Y в H:i', time()-$num ); ?></abbr>
</span>

Хотя тоже.. Если разные форматы вывода даты-времени и наличие указателя временной зоны ещё можно как-то объяснить, то зачем смещение временной зоны в секундах - воще не понятно. Но хозяин-барин.

ЗЫ. Все проверено!

niko_viktor
На сайте с 11.06.2009
Offline
41
#9

В итоге, чтобы Гугл корректно обрабатывал данный микроформат, код приобрел такой окончательный вид:

<span class="updated">

<abbr class="published" title="<?php $num=mt_rand(28800,29100); echo date( 'Y-m-d\TH:i:s\Z', time()-$num ).'">'. date( 'j.m.Y в H:i', time()-$num ); ?></abbr>
</span>

Всем большое спасибо за активное участие и помощь.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий