Start arrow Programowanie arrow Szablon arrow Umieszczenie bieżącej daty
Umieszczenie bieżącej daty Drukuj Wyślij znajomemu
Umieszczenie w szablonie bieżącej daty jest równie proste, jak umieszczenie ścieżki powrotu. W Joomla! i Mambo dostępna jest specjalna funkcja mosCurrentDate()

Kod w pliku index.php

Aby umieścić w szablonie aktualną datę wystarczy wywołać w wybranym miejscu funkcję mosCurrentDate():

<div><?php mosCurrentDate(); ?></div>

Data zostanie wyświetlona w odpowiednim formacie narodowym, z wykorzystaniem m.in. nazw dni, miesięcy). To wszystko. Funkcja nie wymaga żadnych argumentów. Sposób formatowania określamy w arkuszu stylów.

Inne rozwiązanie

Zanim opracowano funkcję mosCurrentDate(), korzystano z funkcji PHP time() oraz określającej format dat stałej _DATE_FORMAT_LC, zdefiniowanej w pliku językowym. Ta deklaracja również pozwala wyświetlać datę w odpowiednim formacie narodowym.

Poniważ rozwiązanie to może być czasem przydatne, przedstawiamy je dokądnie poniżej.

Kod w pliku index.php

W miejscu, w którym chcesz wyświetlać datę, wpisz:

<div>
<?php echo (strftime(_DATE_FORMAT_LC,time() + ($mosConfig_offset*60*60)));?>
</div>
Objaśnienie

W pierwszej części kodu skorzystaliśmy z funkcji PHP strftime(). Funkcja ta zwraca łańcuch znaków zgodnie z podanym w jej argumentach ciągiem formatującym, w naszym przypadku: _DATE_FORMAT_LC. Drugi z argumentów - time zwraca aktualny czas, liczony jako liczba sekund, któe ulynęły od 1 stycznia 1970 roku (pozątek epoki w systemach UNIX).

Ponieważ serwer może być umieszczony w innej lokalizacji, niż przeglądający witrynę goście, konieczne jest czasem wzbogacenie instrukcji wyświetlającej datę poleceniem określającym przesunięcie czasowe. Dokonuje się tego funkcją $mosConfig_offset. Funkcja ta używa godzin, natomiast funkcja PHP time() używa sekund. Dlatego musimy dokonać konwertsji godzin na sekundy, mnożąc minuty przez 60 sekund i godziny przez 60 minut. W rezultacie otrzymujemy potrzebną instrukcję.

Więcej…

W zaproponowanym powyżej kształcie kodu nie ma żadnych instrukcji formatujących wygląd wyświetlanego tekstu. Jeśli chcesz zastosować specjalne wyróżnienia, stwórz w arkuszu stylów odpowiednią klasę, np. .databiez i uzupełnij odpowiednio kod w pliku index.php, np.:

<div class="databiez">
  <?php echo (strftime(_DATE_FORMAT_LC,time() + ($mosConfig_offset*60*60)));?>
</div>

Bieżącą datę możesz poprzedzić jakimś tekstem, np.:

<div class="databiez">
  Dziś jest: <?php echo (strftime(_DATE_FORMAT_LC,time() + ($mosConfig_offset*60*60)));?>
</div>

Uwagi, źródła

Jeżeli masz sugestie odnośnie treści lub chcesz zgłosić poprawki do tego rozdziału, skomentuj go albo umieść wiadomość na forum: Dokumentacja - Propozycje, zmiany, poprawki

Dziękujemy!

Stefan Wajda, Zespół Dokumentacji PCJ

 
« poprzedni artykuł   następny artykuł »