strtotime -1 month 사용 기준점이 필요한 이유 > PHP
PHP

strtotime -1 month 사용 기준점이 필요한 이유

조회 59회 댓글 0건

잘못되었다고 표현 할 수도 있지만 기준을 정해준것이 아니기 때문에 잘못이라고 말하긴 그렇지 않나 싶습니다.

한달전과 한달후의 문제 인데요.

한달의 기준은 다음과 같습니다. 

보통의 한달은: 30일, 31일

2월은: 28일, 29일



  echo '잘못된 하달전: ' . date('Y-m-d H:i:s', strtotime('2023-03-31 00:00:00 -1 month')) . PHP_EOL;

  echo '일자를 사용  : ' . date('Y-m-d H:i:s', strtotime('2023-03-31 00:00:00 -31 day')) . PHP_EOL;

  echo '잘못된 한달후: ' . date('Y-m-d H:i:s', strtotime('2023-01-30 00:00:00 +1 month')) . PHP_EOL;
 
  exit;
 


위 결과는 아래와 같습니다. 날짜는 문제가 되지 않는데 월을 기준으로 더하거나 뺐을때 문제가 됩니다.

이 부분은 기획자와 상의해서 한달의 기준을 어떻게 할것이냐 상의 후 처리 하는것이 올바르겠습니다.

잘못된 하달전: 2023-03-03 00:00:00

일자를 사용  : 2023-02-28 00:00:00

잘못된 한달후: 2023-03-02 00:00:00


74f41311cb42bd2555baee6236e50e01_1674256302_0832.png
 


한달의 마지막일은 date 함수에선 t 를 사용합니다.


● 같이보면 좋은글

  - DateTime 클래스 unix timestamp 사용하여 날짜 출력하기 > PHP 




  • 페이스북으로 공유
  • 트위터로  공유
  • 구글플러스로 공유
전체 137건 1 페이지
  • profile_image 네이버 스마트스토어용 API에 대한것으로 스마트스토어가 있는 경우 가입하여 사용 할 수 있습니다.아래는 되는지 확인하기 위해서 테스트로 만든것으로서 실제사용은 함수나 클래스로 간략하게 만들 필요가 있습니다.필요한것들은 아래와 같습니다.- CURL사용시 HTTP 헤더로 전달(인증등)- CURL을 GET으로 사용- CURL을 POST로 사용- HTTP 헤더를 분리해서 배열에 담아 두었다가 필요한것 있는지 참고 <?php // https://a…
  • profile_image Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in /home/ing.php on line 50 위와 같이 SSL 관련 오류가 발생 하는 경우는 아래 처럼 해주면 됩니다.  $context=a…
  • profile_image CURL을 통한 스트림 데이터를 받는 방법으로 아래에서 CURLOPT_WRITEFUNCTION 부분이 해당 부분입니다.아래 소스의 익명 함수에선 아래가 추가 되어야 스트림 처리를 제대로 할 수 있습니다.    ob_flush();    flush();스트립 처리가 안되는 조건이 있는데 다음과 같습니다.1) 압축 옵션이 있는경우압축을 하려면 전체 데이터가 있어야 하기 때문에 버퍼를 중간중간 비워 출력을 할 수 없습니다.2) 버퍼 설정이 되어 있는…
  • profile_image 1.2.3.4 8비트로 된 IPV4를 정수형 숫자로 변환하는 함수 입니다.8비트 이기 때문에 10진수로 표현이 가능한것은 256개로서 0 부터 시작하기 때문에 255까지 가능 합니다.int 형으로 반환이 되는데 이는 PHP의 int 형을 따릅니다.PHP는 OS시스템을 따르게 됩니다.그렇기 때문에 32bit와 64bit OS는 int 크기가 다르기 때문에 ip2long 함수를 사용하게 되면 다른 숫자를 반환 합니다.이부분은 요즘 32bit 사용하…
  • profile_image 변수나 함수를 한글로 사용해 보았다. 영문으로 사용하면 스네이크 카멜표기법같은것을 사용하는데 한글을 사용하게 되면 언더라인만 들어가기 때문에 이 부분에 대한 규칙이 필요 할 수 있다.현재 까지 영문만 사용 했는데 국내에서만 사용하는 것이라면 굳이 영문을 사용할 필요가 있을까 하는 생각이 들었다.문제는 한글을 사용하면 어떤 경우에 안될까봐 이게 문제이다.  function 한글함수명( string $한글='eee' ) : object {    $…
  • profile_image 웹브라우저를 통한 데이터 전송을 PHP에서 받은 방법은 GET과 POST가 있습니다.PHP에선 슈퍼글로벌 이란 변수가 있으며 일반 글로벌 변수와는 약간 다릅니다. 내장된 글로벌 변수라고 생각을 하셔도 됩니다.URL을 통해서 파라미터를 받으면 이는 GET에 해당 되어 $_GET 의 변수에 담아져 있고 배열입니다.$GLOBALS$_SERVER$_GET$_POST$_FILES$_COOKIE$_SESSION$_REQUEST$_ENV위가 슈퍼글로벌 변수…
  • profile_image 현재는 잘 사용하지 않는데 예전에는 쓰인것이 있습니다.저도 왜? 쓰였는지 이해가 잘 가지 않는 부분입니다. 배열을 사용하면 되는데 말입니다.가능하면 알아보기 쉬운 배열을 사용하는 것이 좋겠습니다. 하지만 남이 사용했을 경우 볼줄을 알아야 되기 때문에 아래와 같습니다.  $abc    = 'def';  $def    = 'abc';  // def 변수의 값을 출력 - 달러가 2개 들어가면 변수의 값이 변수가 된다.  echo $$abc . PHP…