W jaki sposób przekazywać czas pomiędzy PHP i JS?
Treść dodana: 08 grudnia 2015.
Bardzo często zachodzi konieczność wymiany czasu pomiędzy PHP oraz JavaScript. W obu przypadkach najłatwiej operować na uniksowym znaczniku czasu (liczonym od północy 1 stycznia 1970). Pomiędzy technologiami jest jednak mała, aczkolwiek znacząca różnica. Podstawowa funkcja time() w PHP zwraca integer liczony w sekundach, podczas gdy obiekt Date w Javascript przyjmuje czas w mili sekundach. Z prostych zasad matematycznych wynika, że aby prawidłowo wyświetlić czas w JS, należy wartość w sekundach pomnożyć przez 1000.
<?php ini_set('date.timezone', 'Europe/Warsaw'); ?> <script type="text/javascript"> var serverTime = <?= time(); ?>; var currentTime = new Date(serverTime); // zwróci błędny czas, przykładowo Sat Jan 17 1970 19:39:42 GMT+0100 (CET) console.log(currentTime); var currentTime = new Date(serverTime * 1000); // czas jest poprawny console.log(currentTime); </script>
Możemy też operować na obiekcie DateTime:
var serverTime = <?php echo (new DateTime)->getTimestamp(); ?>;
Dodaj komentarz
- php
- spl
- javascript
- composer
- html
- css
- pdo
- sql
- mysql
- postresql
- mongodb
- sieć
- http
- apache
- sql server
- jquery
- ssl
- ajax
- psr
- programowanie
- regex
Wyszukaj interesujące Cię słowa kluczowe pośród istniejących porad.
Mogą Cię również zainteresować:
Jak zabezpieczyć się przed atakiem SQL injection?Jak zrobić proste logowanie w PHP dla jednego użytkownika (administratora)?O czym powinien pamiętać początkujący programista - konfiguracja PHPJak w JavaScript uzależnić wartości dwóch pól select od siebie?Zaznaczanie aktywnych elementów HTML bez użycia JavaScript
Komentarze
Nie ma jeszcze żadnych komentarzy do wyświetlenia. Może chcesz zostać pierwszą osobą która podzieli się swoją opinią?