parseLocalTime() public static method

Parse 2,5 - 2.5 2:30 2:31:58 or even 2011-11-12 10:10:10 now supports negative values like -2,5 -2,5 -2:30 -:30 or -4
public static parseLocalTime ( string $duration, array $allowed = [':', '.', ','] ) : integer
$duration string
$allowed array
return integer Seconds
Beispiel #1
0
 /**
  * TimeTest::testParseTime()
  *
  * @return void
  */
 public function testParseLocalTime()
 {
     //echo $this->_header(__FUNCTION__);
     $tests = ['2:4' => 7440, '2:04' => 7440, '2' => 7200, '1,5' => 3600 + 1800, '1.5' => 3600 + 1800, '1.50' => 3600 + 1800, '1.01' => 3660, ':4' => 240, ':04' => 240, ':40' => 40 * MINUTE, '1:2:4' => 1 * HOUR + 2 * MINUTE + 4 * SECOND, '01:2:04' => 1 * HOUR + 2 * MINUTE + 4 * SECOND, '0:2:04' => 2 * MINUTE + 4 * SECOND, '::4' => 4 * SECOND, '::04' => 4 * SECOND, '::40' => 40 * SECOND, '2011-11-12 10:10:10' => 10 * HOUR + 10 * MINUTE + 10 * SECOND];
     // positive
     foreach ($tests as $was => $expected) {
         $is = $this->Time->parseLocalTime($was);
         //pr($is);
         $this->assertEquals($expected, $is);
     }
     unset($tests['2011-11-12 10:10:10']);
     // negative
     foreach ($tests as $was => $expected) {
         $is = $this->Time->parseLocalTime('-' . $was);
         //pr($is);
         $this->assertEquals(-$expected, $is);
     }
 }