컴퓨터 엑셀 워드 포토숍 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post PHP, 한국식 날짜 시간 출력, 24시간제, 12시간제; YYYY-MM-DD hh:mm:...PHP, 영어 요일 이름 구하기; 요일명 출력 함수; English WEEK NamePHP 예제] 한글 요일 이름 구하기, 요일명 출력; Get-Print DAY OF THE...PHP 예제] 현재 날짜 시간, 년월일 시분초 출력 함수; Print Date TimePHP, 백만분의 1초 단위 유닉스 타임, 유닉스 시간 구하기 함수; Unix Time자바스크립트, 16진수 헥사(Hex), 2진수, 10진수 변환 함수; JavaScriptPHP 예제] HTML 특수 문자/기호 변환 함수, Special Char파이어폭스, 사진 리사이즈 기능 끄기; 이미지 크기 축소 해제; Firefox 2 Imag...PHP 예제] 다음줄로 줄바꿈 문자 넣기, 엔터 키(Enter) 치기; Newline Ch...PHP 예제] 파이값, 원주율(PI) 근사값 상수 함수; M_PI

PHP, 스와치 시계의 인터넷 타임(Swatch Internet Time) 구하기

Wednesday, April 25, 2007

스와치 시간(Swatch Internet Time)이라는 것이 있습니다. 스위스의 시계 회사인 스와치(Swatch)사에서 만든 시간 체계입니다. 시간대 계산을 하지 않고, 세계 어디에서나 공통의 시간을 사용할 수 있게 하기 위해 만들었다고 합니다. (그러나 날짜 부분은 타임존을 적용해야 했습니다.)

시간대(타임존)가 없기에, 현재 유럽 시각이 @335 라면, 한국 시각과 미국 시각도 똑같이 @335 입니다.

현재 널리 사용되는 시간은 60진법 + 12진법으로 되어 있지만, 스와치 시간은 10진법입니다. 그래서 시간 계산에서 편리한 면이 있습니다.

하루(24시간)를, 000 ~ 999 까지, 1000 비트(Beats)로 구획지어 표현합니다. 즉, Milliday 입니다.

스와치 본사가 있는 스위스 비엘(Biel)이라는 도시를 기준점으로 하는데, 이것은 실은 "중앙 유럽 시간(UTC+1)"입니다. 즉, Central European Time 입니다. 그리고 서머 타임은 없습니다.

중앙 유럽의 오전0시는 000비트, 중앙 유럽의 정오는 500비트입니다. 한국 시간으로는 아침8시가 000비트입니다.

1 일 = 1000 비트
1 시간 = 41.666 비트
1 분 = 0.6944 비트
1 초 = 0.01157 비트

1비트(Beat; Swatch Beat)는 "1분 26.4초"에 즉 "86.4초"에 해당합니다. 비트보다 더 짧은 단위인 Centibeat (센티 비트) 는 0.864초 입니다. 그러나 스와치 시간은, 날짜 처리 부분과, 비트 이하 단위에 대한 공식적인 정의가 즉 Specification 이 없습니다.

앞에 골뱅이를 붙여서

@515

이런 식으로 표현합니다.



인터넷이나 실생활에서, 스와치 시간을 쓰는 곳을 본 적은 없습니다. 그렇지만 재미는 있더군요. 그리고 PHP 에서는 기본적으로 스와치 시간을 지원합니다.


date("B")
이렇게 하면 됩니다. 다음 예제와 같습니다.

스와치 타임 구하기 함수


파일명: example.php
<html>
<head>
<title>PHP Example</title>
</head>

<body>

<?php

// 보통의 한국 시간 (24시간제)
echo date("Y-m-d H:i:s") . "<br />\n";


// 스와치 인터넷 타임 (Swatch Internet Time)
echo "@" . date("B") . "<br />\n";
// 000 ~ 999 까지


// 날짜까지 포함하여 스와치 인터넷 타임 출력
// 날짜에 대한 정의는 없지만,
// 날짜를 중앙유럽시간대로 변경하여 구하는 것이 보통입니다.
echo swatchTime() . "<br />\n";


// 스위스 시간대로 변경하여 날짜를 구한 후
// 다시 한국 시간대로 복귀하는 함수
function swatchTime() {
  date_default_timezone_set("Etc/GMT+1");
  $s = sprintf("d%s %s", date("d.m.Y"), date("@B"));
  date_default_timezone_set("Asia/Seoul");
  return $s;
}

?>

</body>
</html>


실행 결과 화면:
D:\Z>php example.php
<html>
<head>
<title>PHP Example</title>
</head>

<body>

2007-04-25 08:26:24<br />
@018<br />
d24.04.2007 @018<br />

</body>
</html>

D:\Z>


한국의 아침 8시 26분경이 "@018" 이라는 스와치 시간으로 표시되었습니다.

날짜는 중앙 유럽 시간으로 표현되었기에,
d24.04.2007 @018
이렇게 하루 전으로 나옵니다.


▶▶ PHP 예제] 현재 날짜 시간, 년월일 시분초 출력 함수; Print Date Time

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top