2012-01-12 1 views
1

자바 스크립트 카운트 다운 타이머를 만들려고합니다.유닉스 타임 스탬프를 남은 초 남음으로 변경하는 방법

YYYY-MM-DD HH : MM : SS 형식의 문자열이 있습니다.

이것은 최대 6 개월 후에 발생할 수 있습니다.

지금부터 미래의 시간까지 남은 시간을 알아볼 수있는 가장 좋은 방법은 무엇입니까? 이것은 PHP로 구현 될 수 있습니다.

미리 감사드립니다.

답변

1

와 빠른/먼지를 갈 수 있습니다.

그런 다음 microtime을 사용하여 현재 유닉스 타임 스탬프를 얻고 그 차이점을 찾으십시오. 남은 시간 (밀리 초)이므로 1000으로 나누면 초 단위로 표시됩니다.

http://php.net/manual/en/function.strtotime.php
http://php.net/manual/en/function.microtime.php

이 작동합니다 :

$currentTime = explode(" ", microtime()); 
$currentTime = $currentTime[1]; 
$futureTime = strtotime("YYYY-MM-DD HH:MM:SS"); // insert your date here 
$timeRemaining = ($futureTime - $currentTime)/1000; 
1

어떻게이 문자열 기반 타임 스탬프가 표시됩니까? 유닉스 타임 스탬프는 실제로 "1970-01-01 00:00:00 이후의 초"입니다. 그건 네이티브 MySQL 날짜 문자열처럼 보입니다.

MySQL에서 출력되는 경우 UNIX_TIMESTAMP()으로 유닉스 스타일의 타임 스탬프로 변환 할 수 있습니다.

SELECT unix_timestamp(datetimefield) ... 

한 다음 (JS 타임 스탬프가 동일한 에포크가 있지만, 밀리 초) (1000)에 의해 승산함으로써 자바 타임 스탬프로 변환. 당신이 PHP에 갇혀있는 경우

, 당신은 PHP에서 당신은 날짜의 문자열 표현을 받아 유닉스 타임 스탬프를 반환 strtotime를 사용할 수 있습니다

$timestamp = strtotime($time_string); 
$js_timestamp = $timestamp * 1000; 
+0

감사를 도와, 내가 뭐하는 거지하는 내 사이트에서 실행하고 경쟁을위한 마감일을 설정합니다. 유닉스 타임 스탬프와 같은 형식으로 mysql 테이블에 값을 입력한다. – user866190

+0

유닉스 타임 스탬프는 단지 숫자 일 뿐이다 : 1/1970 년 이후의 초 수. 예 : 지금 유닉스 타임 스탬프를 타이핑하는 동안 내 로컬 머신에 1326397358이있다. –

+0

@ user866190 일반적으로 문자열 표현이 아닌 데이터베이스에 번호를 저장하기 만하면됩니다. 이 작업을 수행 할 수 있습니까? 아니면 기존 코드/기존 레코드가 붙어 있습니까? – Matt

관련 문제