이 글에서는 주로 PHP strftime 함수의 자세한 사용법을 소개합니다. strftime() 함수는 지역 설정에 따라 현지 시간/날짜 형식을 지정합니다. 일반적으로 시간 형식 지정이 필요한 친구는 정의를 참조하여 사용할 수 있습니다.
strftime() 함수는 로캘 설정에 따라 현지 시간/날짜 형식을 지정합니다.
Syntax
strftime(format, timestamp) 매개변수 설명 format은 선택 사항입니다. 결과가 반환되는 방법을 지정합니다.
타임스탬프는 선택 사항입니다.팁 및 메모
팁: 반환된 시간이 현지 시간이라는 점을 제외하면 gmstrftime()과 동작이 동일합니다.
Example
strftime() 및 gmstrftime()의 결과를 출력합니다.
<?php教程 echo(strftime("%b %d %Y %X", mktime(20,0,0,12,31,98))); echo(gmstrftime("%b %d %Y %X", mktime(20,0,0,12,31,98))); //输出当前日期、时间和时区 echo(gmstrftime("It is %a on %b %d, %Y, %X time zone: %Z",time())); ?>strftime() 함수는 YYYY-MM-DD HH:MM:SS 형식의 날짜 문자열을 다른 형식의 문자열로 변환할 수 있습니다. .
strftime()의 구문은 strftime(format, date/time, modifier, modifier, ...)입니다.
다음 기호를 사용하여 날짜와 시간의 형식을 지정할 수 있습니다.
%a | 현재 지역의 요일 약어 | Sun to Sat |
%A | 현재 지역의 요일 전체 이름 | Sunday to Saturday |
%d | 월의 날짜, 소수점(범위: 01~31) | 01~31 |
%e | 월의 날짜, 소수점, 공백 숫자('1' ~ '31' 범위) 앞에 추가된 숫자는 Windows에서 설명한 대로 구현되지 않습니다. 자세한 내용은 아래를 참조하세요. | 1 ~ 31 |
%j | 연도의 일자는 앞에 0이 붙은 세 자리 십진수로 표시됩니다(범위: 001 ~ 366) | 001 ~ 366 |
%u | 은 다음을 따릅니다. ISO -8601 요일의 십진수 표현[1,7], 1은 월요일을 나타냄 | 1(월요일)부터 7(일요일) |
%w | 요일, 일요일은 0 | 0(일요일) ~ 6(토요일) |
week | --- | --- |
%U | 매년 첫 번째 주, 첫 번째 주의 첫 번째 일요일부터 시작 하루가 시작됩니다 | 13(연중 13번째 주) |
%V | %V - ISO-8601:1988 형식의 연도 주 번호(01~53 범위) 1은 4일 이상 남은 연도의 첫 번째 주이며, 월요일이 주의 첫 번째 날입니다. (지정된 타임스탬프에 해당하는 주 번호의 연도 구성으로 %G 또는 %g를 사용합니다.) | 01 ~ 53(여기서 53은 겹치는 주를 나타냄) |
%W | 올해의 주 번호 , from 첫 번째 주의 첫 번째 월요일이 첫날로 시작됩니다 | 46(월요일로 시작하는 46번째 주) |
month | --- | --- |
% b | 현재 지역월의 약어 | Jan to Dec |
%B | 현재 지역월의 전체 이름 | January~December |
%h | 현재 지역의 약어 월(%b의 별칭) | Jan - Dec |
%m | 두 자리 월 | 01(1월) - 12(12월) |
year | --- | - -- |
%C | 두 자리 연도는 세기를 나타냅니다(연도를 100으로 나누어 정수로 잘림) | 19는 20세기입니다 |
%g | 두 자리 연도 연도는 ISO-8601:1988 주 번호를 따릅니다(%V 참조). ISO 주 번호가 이전 또는 다음 연도에 속하는 경우 해당 연도가 사용된다는 점을 제외하면 %V와 동일한 형식 및 값입니다. | 예: 2009년 1월 6일 주는 09입니다. |
%G | %g | 의 전체 4자리 버전예: 2009년 1월 3일 주는 2008년입니다. |
%y | 두 자리 표시 연도 | 예를 들어 : 09는 2009년, 79는 1979년 |
%Y | 4자리 표시 연도 | 예: 2038 |
Time | --- | --- |
%H | 24시간 형식으로 두 자리 시간 | 00~23 |
%I | 을 표시합니다. 12시간 단위로 두 자리 시간 | 01~12 |
%l(소문자 'L') | 을 표시합니다. 형식 형식은 시간을 표시하며 앞에 공백 | 1 ~ 12 |
%M | 두 자리 분 | 00 ~ 59 |
%p | 대문자 "AM" 또는 " PM" | 예: 00:31은 AM, 22:23은 PM |
%P | 지정된 시간의 소문자 "am" 또는 "pm" | 예: 00:31은 am, 22:23은 pm |
%r | 은 "%I:%M:%S %p" | 와 동일합니다. 예: 21:34:17은 오후 09:34:17 |
%R | 및 "% H:%M"은 동일합니다 | 예: 오전 12시 35분은 00:35, 오후 4시 44분은 16:44 |
%S | 두 자리 숫자는 초를 나타냅니다 | 00 ~ 59 |
% T | 는 "%H:%M:%S" | 와 동일합니다. 예: 09:34:17 PM은 21:34:17 |
%X | 날짜를 제외한 현재 지역의 기본 시간 표현 | 예: 03:59:16 또는 15:59:16 |
%z | UTC의 시간대 오프셋 또는 약어(운영 체제에 의해 결정됨) ) | 예: 동부 시간은 -0500 또는 EST |
%Z | %z는 UTC에 대한 시간대 오프셋이나 약어를 제공하지 않습니다(운영 체제에서 결정) | 예: -0500 또는 EST is Eastern Time |
시간 및 날짜 스탬프 | --- | --- |
%c | 현재 지역에서 선호하는 날짜 및 시간 표현 | 예: 2009년 2월 5일 12: 오전 45:10은 Tue Feb 5 00:45:10 2009 |
% D | 는 "%m/%d/%y" | 와 동일합니다. 예: 2009년 2월 5일은 02/05/입니다. 09 |
%F | "%Y-%m-%d "와 동일(데이터베이스 날짜 스탬프에 일반적으로 사용됨) | 예: 2009년 2월 5일은 2009-02-05 |
의 타임스탬프입니다. %s | Unix epoch(time() 함수와 동일) | 예: 1979 2009년 9월 10일 오전 8:40:00은 305815200 |
%x | 현재 지역에서 선호하는 시간 표현입니다. , 시간 제외 | 예: 2009년 2월 5일은 02/05/09 |
Other | --- | --- |
%n | 줄 바꿈("n") | --- |
%t | 탭 문자("t") | --- |
%% | 텍스트의 퍼센트 문자("%") |
这个参数的最大长度是 1023 个字符。
Warning
尽管 ISO 9889:1999(当前的 C 标准)明确指出一周从星期一开始,但是 Sun Solaris 的一周似乎从星期天开始并作为 1。所以 %u 的结果也许不会和手册里描述得一样。
Warning
仅针对 Windows:这个函数里 %e 修饰符修饰符还不能支持 Windows。 为了得到这个值可以用 %#d 修饰符来代替。下例说明了如何写一个跨平台支持的函数。
Warning
仅针对 Mac OS X:这个函数里 %P 修饰符还不能支持 Mac OS X。
timestamp
可选的 timestamp 参数是一个 integer 的 Unix 时间戳,如未指定,参数值默认为当前本地时间。也就是说,其值默认为 time() 的返回值。
strftime()的用法举例如下:
select strftime('%Y.%m.%d %H:%M:%S','now','localtime');
结果:2018.06.21 21:41:09
其实更好的用法是这样的,比如统,本月或本年的支出:
select strftime('%Y-%m',日期) as 月份,sum(支出) as 月支出 from 流水帐 group by 月份;
Example #1 strftime() locale examples
<?php setlocale(LC_TIME, "C"); echo strftime("%A"); setlocale(LC_TIME, "fi_FI"); echo strftime(" in Finnish is %A,"); setlocale(LC_TIME, "fr_FR"); echo strftime(" in French %A and"); setlocale(LC_TIME, "de_DE"); echo strftime(" in German %A.\n"); ?>
Example #2 ISO 8601:1988 week number example
<?php /* December 2002 / January 2003 ISOWk M Tu W Thu F Sa Su ----- ---------------------------- 51 16 17 18 19 20 21 22 52 23 24 25 26 27 28 29 1 30 31 1 2 3 4 5 2 6 7 8 9 10 11 12 3 13 14 15 16 17 18 19 */ // Outputs: 12/28/2002 - %V,%G,%Y = 52,2002,2002 echo "12/28/2002 - %V,%G,%Y = " . strftime("%V,%G,%Y", strtotime("12/28/2002")) . "\n"; // Outputs: 12/30/2002 - %V,%G,%Y = 1,2003,2002 echo "12/30/2002 - %V,%G,%Y = " . strftime("%V,%G,%Y", strtotime("12/30/2002")) . "\n"; // Outputs: 1/3/2003 - %V,%G,%Y = 1,2003,2003 echo "1/3/2003 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/3/2003")) . "\n"; // Outputs: 1/10/2003 - %V,%G,%Y = 2,2003,2003 echo "1/10/2003 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/10/2003")) . "\n"; /* December 2004 / January 2005 ISOWk M Tu W Thu F Sa Su ----- ---------------------------- 51 13 14 15 16 17 18 19 52 20 21 22 23 24 25 26 53 27 28 29 30 31 1 2 1 3 4 5 6 7 8 9 2 10 11 12 13 14 15 16 */ // Outputs: 12/23/2004 - %V,%G,%Y = 52,2004,2004 echo "12/23/2004 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/23/2004")) . "\n"; // Outputs: 12/31/2004 - %V,%G,%Y = 53,2004,2004 echo "12/31/2004 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/31/2004")) . "\n"; // Outputs: 1/2/2005 - %V,%G,%Y = 53,2004,2005 echo "1/2/2005 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/2/2005")) . "\n"; // Outputs: 1/3/2005 - %V,%G,%Y = 1,2005,2005 echo "1/3/2005 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/3/2005")) . "\n"; ?>
Example #3 Cross platform compatible example using the %e modifier
<?php // Jan 1: results in: '%e%1%' (%%, e, %%, %e, %%) $format = '%%e%%%e%%'; // Check for Windows to find and replace the %e // modifier correctly if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') { $format = preg_replace('#(?<!%)((?:%%)*)%e#', '\1%#d', $format); } echo strftime($format); ?>
Example #4 Display all known and unknown formats.
<?php // Describe the formats. $strftimeFormats = array( 'A' => 'A full textual representation of the day', 'B' => 'Full month name, based on the locale', 'C' => 'Two digit representation of the century (year pided by 100, truncated to an integer)', 'D' => 'Same as "%m/%d/%y"', 'E' => '', 'F' => 'Same as "%Y-%m-%d"', 'G' => 'The full four-digit version of %g', 'H' => 'Two digit representation of the hour in 24-hour format', 'I' => 'Two digit representation of the hour in 12-hour format', 'J' => '', 'K' => '', 'L' => '', 'M' => 'Two digit representation of the minute', 'N' => '', 'O' => '', 'P' => 'lower-case "am" or "pm" based on the given time', 'Q' => '', 'R' => 'Same as "%H:%M"', 'S' => 'Two digit representation of the second', 'T' => 'Same as "%H:%M:%S"', 'U' => 'Week number of the given year, starting with the first Sunday as the first week', 'V' => 'ISO-8601:1988 week number of the given year, starting with the first week of the year with at least 4 weekdays, with Monday being the start of the week', 'W' => 'A numeric representation of the week of the year, starting with the first Monday as the first week', 'X' => 'Preferred time representation based on locale, without the date', 'Y' => 'Four digit representation for the year', 'Z' => 'The time zone offset/abbreviation option NOT given by %z (depends on operating system)', 'a' => 'An abbreviated textual representation of the day', 'b' => 'Abbreviated month name, based on the locale', 'c' => 'Preferred date and time stamp based on local', 'd' => 'Two-digit day of the month (with leading zeros)', 'e' => 'Day of the month, with a space preceding single digits', 'f' => '', 'g' => 'Two digit representation of the year going by ISO-8601:1988 standards (see %V)', 'h' => 'Abbreviated month name, based on the locale (an alias of %b)', 'i' => '', 'j' => 'Day of the year, 3 digits with leading zeros', 'k' => 'Hour in 24-hour format, with a space preceding single digits', 'l' => 'Hour in 12-hour format, with a space preceding single digits', 'm' => 'Two digit representation of the month', 'n' => 'A newline character ("\n")', 'o' => '', 'p' => 'UPPER-CASE "AM" or "PM" based on the given time', 'q' => '', 'r' => 'Same as "%I:%M:%S %p"', 's' => 'Unix Epoch Time timestamp', 't' => 'A Tab character ("\t")', 'u' => 'ISO-8601 numeric representation of the day of the week', 'v' => '', 'w' => 'Numeric representation of the day of the week', 'x' => 'Preferred date representation based on locale, without the time', 'y' => 'Two digit representation of the year', 'z' => 'Either the time zone offset from UTC or the abbreviation (depends on operating system)', '%' => 'A literal percentage character ("%")', ); // Results. $strftimeValues = array(); // Evaluate the formats whilst suppressing any errors. foreach($strftimeFormats as $format => $description){ if (False !== ($value = @strftime("%{$format}"))){ $strftimeValues[$format] = $value; } } // Find the longest value. $maxValueLength = 2 + max(array_map('strlen', $strftimeValues)); // Report known formats. foreach($strftimeValues as $format => $value){ echo "Known format : '{$format}' = ", str_pad("'{$value}'", $maxValueLength), " ( {$strftimeFormats[$format]} )\n"; } // Report unknown formats. foreach(array_diff_key($strftimeFormats, $strftimeValues) as $format => $description){ echo "Unknown format : '{$format}' ", str_pad(' ', $maxValueLength), ($description ? " ( {$description} )" : ''), "\n"; } ?>
下面是其他网友的补充
php strftime()的使用
string strftime ( string format[,inttimestamp = time() ] )
返回用给定的格式字串对给出的 timestamp 进行格式输出后的字符串。如果没有给出时间戳则用当前的本地时间。
Example1:
<?php echo '本年中的第·' . strftime('%W', strtotime('+2 week midnight -0 second')) . '·周'; ?>
本年中的第·31·周
Example2:
<?php echo "現在時間是:" . strftime('%d.%B %Y %H:%M:%S', time()); ?>
現在時間是:20.July 2015 17:01:26
Example3:
<?php echo '日期時間格式化為:' . strftime('%d.%B %Y %H:%M:%S', strtotime('2018-10-15')); ?>
日期時間格式化為:15.October 2018 00:00:00
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
위 내용은 PHP에서 strftime 함수를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

phpidifiesauser의 sssessionusessessioncookiesandssessionids.1) whensession_start () iscalled, phpgeneratesauniquessessionStoredInacookienamedPhpsSessIdonSeuser 'sbrowser.2) thisidallowsphptoretrievessessionDataTromServer.

PHP 세션의 보안은 다음 측정을 통해 달성 할 수 있습니다. 1. Session_REGENEREAT_ID ()를 사용하여 사용자가 로그인하거나 중요한 작업 일 때 세션 ID를 재생합니다. 2. HTTPS 프로토콜을 통해 전송 세션 ID를 암호화합니다. 3. 세션 _save_path ()를 사용하여 세션 데이터를 저장하고 권한을 올바르게 설정할 보안 디렉토리를 지정하십시오.

phpsessionfilesarestoredInTheRectorySpecifiedBysession.save_path, 일반적으로/tmponunix-likesystemsorc : \ windows \ temponwindows.tocustomizethis : 1) austession_save_path () toSetacustomDirectory, verlyTeCustory-swritation;

toretrievedatafromAphPsession, startSessionstart_start () andaccessvariblesinthe $ _sessionArray.forexample : 1) startthessession : session_start (). 2) retrievedata : $ _ session [ 'username']; echo "Welcome,". $ username;

세션을 사용하여 효율적인 쇼핑 카트 시스템을 구축하는 단계에는 다음이 포함됩니다. 1) 세션의 정의와 기능을 이해합니다. 세션은 요청에 따라 사용자 상태를 유지하는 데 사용되는 서버 측 스토리지 메커니즘입니다. 2) 쇼핑 카트에 제품 추가와 같은 기본 세션 관리를 구현합니다. 3) 제품 수량 관리 및 삭제 지원 고급 사용으로 확장; 4) 세션 데이터를 지속하고 보안 세션 식별자를 사용하여 성능 및 보안을 최적화합니다.

이 기사는 PHP의 인터페이스를 생성, 구현 및 사용하는 방법을 설명하여 코드 구성 및 유지 관리에 대한 이점에 중점을 둡니다.

이 기사에서는 PHP의 암호 해싱에 대한 Crypt ()와 Password_hash ()의 차이점에 대해 논의하여 최신 웹 애플리케이션에 대한 구현, 보안 및 적합성에 중점을 둡니다.

기사는 입력 유효성 검사, 출력 인코딩 및 OWASP ESAPI 및 HTML 청정기와 같은 도구를 통해 PHP의 크로스 사이트 스크립팅 (XSS) 방지에 대해 논의합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

드림위버 CS6
시각적 웹 개발 도구

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.
