2018년 5월 13일 일요일

[PHP예제] 067 문자열 표시의 날짜를 타임스탬프로 변환하고 싶을 때




 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>문자열 표시의 날짜를 타임스탬프로 변환하고 싶을 때</title>
    <link href="style.css" rel="stylesheet">
</head>
<body>
<div>
<?php
date_default_timezone_set('Asia/Seoul');

// 한 줄의 표 배치 형식
$outputFormat = '<tr><td>%s</td><td>%s</td><td>%s</td></tr>';

echo "<table>";
echo "<tr>";
echo "<th>인수에 설정한 문자열</th>";
echo "<th>타임스탬프</th>";
echo "<th>날짜</th>";
echo "</tr>";

$time = '2015/10/1 12:34:56';
// DateTime 객체를 new 연산자로 작성함
$dateObj = new DateTime($time);
$timeStamp = $dateObj->getTimestamp();
$date = $dateObj->format('Y-m-d H:i:s');
echo sprintf($outputFormat, $time, $timeStamp, $date);

$time = '2016-1-1';
$dateObj = new DateTime($time);
$timeStamp = $dateObj->getTimestamp();
$date = $dateObj->format('Y-m-d H:i:s');
echo sprintf($outputFormat, $time, $timeStamp, $date);

$time = 'now';
$dateObj = new DateTime();
$dateObj->add(DateInterval::createFromDateString($time));
$timeStamp = $dateObj->getTimestamp();
$date = $dateObj->format('Y-m-d H:i:s');
echo sprintf($outputFormat, $time, $timeStamp, $date);

$time = '+1 day';
$dateObj = new DateTime();
$dateObj->add(DateInterval::createFromDateString($time));
$timeStamp = $dateObj->getTimestamp();
$date = $dateObj->format('Y-m-d H:i:s');
echo sprintf($outputFormat, $time, $timeStamp, $date);

$time = '+1 year 2 months 3weeks';
$dateObj = new DateTime();
$dateObj->add(DateInterval::createFromDateString($time));
$timeStamp = $dateObj->getTimestamp();
$date = $dateObj->format('Y-m-d H:i:s');
echo sprintf($outputFormat, $time, $timeStamp, $date);

// 날짜로서 무효인 문자열의 경우 현재 날짜가 됨
$time = 'Time is Money';
$dateObj = new DateTime();
$dateObj->add(DateInterval::createFromDateString($time));
$timeStamp = $dateObj->getTimestamp();
$date = $dateObj->format('Y-m-d H:i:s');
echo sprintf($outputFormat, $time, $timeStamp, $date);

echo "</table>";
?>
</div>
</body>
</html>



댓글 없음:

댓글 쓰기