2011-01-17 6 views
4

오늘의 월요일이 월요일이라는 것을 알고 있다고 가정 해 봅시다. 어떻게 PHP에서 mktime()을 사용하여 지난 금요일과 금요일 전에 유닉스 타임 스탬프를 얻을 수 있습니까 ??PHP를 사용하여 유닉스 타임 스탬프를 얻는다

오늘 날짜는 17-01-2011이며 월요일입니다. 그런 다음 타임 스탬프가 14-01-2011 00:00:00 및 7-01-2011 00:00:00에 필요합니다.

+0

* (참고) * 지원되는 날짜 및 시간을, 현재 제 소인 얻기

형식] (http://de2.php.net/manual/en/datetime.formats.php) 및보다 구체적으로 [관련 형식] (http://de2.php.net/manual/en/datetime.for – Gordon

답변

7

체크 아웃 strtotimehttp://php.net/manual/en/function.strtotime.php ..solves이 좀 문제의 대부분은 - 그렇지 않으면 당신은 자신

이 같은
+1

그래서 구체적인 예제는 strtotime ('last friday')이고 86400 * 7 (86400 초, 7 일)을 뺍니다. – jishi

+0

@jishi 실제로, 또는 주어진 php.net 링크의 예제 아래에 나열된 모든 것 : D – Hannes

+0

정말 고마워요.이게 정말 도움이되었습니다. – ayush

1

뭔가

<?php 
    // Check if today is a Monday 
    if (date('N') == 1) 
    { 
     // Create timestamp for today at 00:00:00 
     $today = mktime('0', '0', '0', date('n'), date('j'), date('Y')); 

     $last_friday = $today - 60*60*24*3; 
     $last_last_friday = $today - 60*60*24*10; 

     // Convert to a readable format as a check 
     echo 'Last Friday\'s timestamp is ' . $last_friday . ' (' . strftime('%d-%m-%Y %H:%M:%S', $last_friday).') <br />'; 
     echo 'Last last Friday\'s timestamp is ' . $last_last_friday . ' (' . strftime('%d-%m-%Y %H:%M:%S', $last_last_friday).')'; 
    } 
1

더 많은 당신이 생각했던 것보다 간단을해야 날짜를 스트랩 (또는해야한다 심지어 나는 그 문제에 관해서)! 본질적으로 strtotime("last friday", time())은 ... 마지막 금요일의 타임 스탬프를 가져옵니다! 지난 금요일

$unixNow = time(); 
echo date('r', $unixNow) . "<br />"; 
//Thu, 10 Jan 2013 15:14:19 +0000 

얻기 :

$unixLastFriday = strtotime("last friday", $unixNow); 
echo date('r', $unixLastFriday) . "<br />"; 
//Fri, 04 Jan 2013 00:00:00 +0000 

그 전에 금요일 얻기 :

$unixFridayBeforeThat = strtotime("last friday", $unixLastFriday); 
echo date('r', $unixFridayBeforeThat) . "<br />"; 
//Fri, 28 Dec 2012 00:00:00 +0000 
관련 문제