Daniele Bonini (皮夕) | 5mode.com | WebDev | Translator 3 лет назад
Родитель
Сommit
d8ddc87eec
2 измененных файлов с 20 добавлено и 7 удалено
  1. 7 7
      functions/func.casp-datetime-polyfills.inc
  2. 13 0
      index.php

+ 7 - 7
functions/func.casp-datetime-polyfills.inc

@@ -394,26 +394,26 @@ if (!function_exists("date_add1")) {
        switch($intervalType)
        {
          case "Y":
-           date_sub($date, date_interval_create_from_date_string($interval . ' years'));
+           date_sub($date, date_interval_create_from_date_string(abs($interval) . ' years'));
            break;
          case "m":
-           date_sub($date, date_interval_create_from_date_string($interval . ' months'));
+           date_sub($date, date_interval_create_from_date_string(abs($interval) . ' months'));
            break;
          case "W":
            $days = $interval * 7;
-           date_sub($date, date_interval_create_from_date_string($interval . ' days'));
+           date_sub($date, date_interval_create_from_date_string(abs($interval) . ' days'));
            break;
          case "d":
-           date_sub($date, date_interval_create_from_date_string($interval . ' days'));
+           date_sub($date, date_interval_create_from_date_string(abs($interval) . ' days'));
            break;
          case "H":
-           date_sub($date, date_interval_create_from_date_string($interval . ' hours'));
+           date_sub($date, date_interval_create_from_date_string(abs($interval) . ' hours'));
            break;
          case "i":
-           date_sub($date, date_interval_create_from_date_string($interval . ' minutes'));
+           date_sub($date, date_interval_create_from_date_string(abs($interval) . ' minutes'));
            break;
          case "s":
-           date_sub($date, date_interval_create_from_date_string($interval . ' seconds'));
+           date_sub($date, date_interval_create_from_date_string(abs($interval) . ' seconds'));
            break;
          default:
            return $retval;  

+ 13 - 0
index.php

@@ -226,3 +226,16 @@ require FUNCTIONS_PATH . DIRECTORY_SEPARATOR . "/func.casp-string-polyfills.inc"
   echo($d1->format("Y/d/m H:i:s A")."<br><br>");
 ?> 
 
+<pre style="width:500px">
+  // date_add1() example #2
+  $d1 = new DateTime("09/27/2021 22:05:55");
+  $d1 = date_add1("d", -5, $d1);
+  echo($d1->format("Y/d/m H:i:s A")."&lt;br&gt;");
+</pre>
+
+<b>Result:</b><br>
+<?php 
+  $d1 = new DateTime("09/27/2021 22:05:55");
+  $d1 = date_add1("d", -5, $d1);
+  echo($d1->format("Y/d/m H:i:s A")."<br><br>");
+?>