ursus contionabundo: Datum kürzen

Beitrag lesen

Gegenvorschlag:

<?php
function gerShortDate( $s = false ) {
   if ( false === $s )  {
		return date( 'd.m.y', time() );
   }
   if ( 'integer' == gettype( $s ) ) {
       return date( 'd.m.y', $s );
   } else {
	   if ( strpos( $s, '.' ) ) {
		   $a  = explode ('.', $s );
		   $a[2] = $a[2] % 100;
		   $s = implode('/', [$a[1], $a[0], $a[2] ] );
     } 
     return date( 'd.m.y', strtotime( $s ) );
   }
}

function test($input=false)
{
   echo sprintf("% 12s", $input),"\t", gerShortDate($input) , "\n";
}

test();
test(time());
# Deutsch
test("7.5.9");
test("7.5.19");
test("07.05.19");
test("07.05.219");
test("07.05.2019");
# Englisch:
test("5/7/9");
test("05/07/19");
test("05/07/219");
test("5/7/2019");
test("05/07/2019");
# ISO:
test("19-05-7");
test("19-5-7");
test("2019-5-07");
test("9-05-07");
test("19-05-07");
test("219-05-07");
test("2019-05-07");

Resultate:

            	07.05.19
  1557221414	07.05.19
       7.5.9	07.05.09
      7.5.19	07.05.19
    07.05.19	07.05.19
   07.05.219	07.05.19
  07.05.2019	07.05.19
       5/7/9	07.05.09
    05/07/19	07.05.19
   05/07/219	07.05.19
    5/7/2019	07.05.19
  05/07/2019	07.05.19
     19-05-7	07.05.19
      19-5-7	07.05.19
   2019-5-07	07.05.19
     9-05-07	07.05.09
    19-05-07	07.05.19
   219-05-07	07.05.19
  2019-05-07	07.05.19
0 44

Datum kürzen

  1. 1
    1. 0
      1. 0
  2. 0
  3. 0
    1. 0
      1. 0
      2. 0
        1. 0
        2. 0
          1. 0
            1. 0
              1. 0
                1. 0
                  1. 0
                    1. 0
                      1. 0
                        1. 0
                  2. 1
                    1. 0
                      1. 0
                        1. 0
                          1. 0
                            1. 0
                            2. 0

                              microtime(true)

                              1. 0
                                1. 0
                                  1. 0
                                    1. 5
                              2. 0
                              3. 0
                                1. -1

                                  Kann passieren

                          2. 0
                            1. 0
                      2. 0
                        1. 0
                      3. 0
                        1. 0
                          1. 0
                            1. 0

                              PS: Benchmark Code

                            2. 0
                              1. 0
      3. 0