PHP code example of thomas-institut / timestring

1. Go to this page and download the library: Download thomas-institut/timestring library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

thomas-institut / timestring example snippets


$ts = new TimeString('1999-12-31 23:59:50.123456');
// inner value is '1999-12-31 23:59:50.123456'

$ts = new TimeString('1999-12-31 23:59:50');
// inner value is '1999-12-31 23:59:50.000000'

$ts = new TimeString('1999-12-31');
// inner value is '1999-12-31 00:00:00.000000'

$ts = new TimeString('December 31, 1999');
// inner value is '1999-12-31 00:00:00.000000'

// but
$ts = new TimeString('');
// throws InvalidArgumentException

date_default_timezone_set('UTC');

$ts = new TimeString(1745307389); 
// inner value is '2025-04-22 07:36:29.000000

$ts = new TimeString(1745307389.123456, 'Europe/Berlin');
// inner value is '2025-04-22 09:36:29.123456

$dt = new DateTime('December 31,1999');

$ts = new TimeString($dt);
// inner value is '1999-12-31 00:00:00.000000'

$timeString = new TimeString('1999-12-31 23:59:50.123456');

$timeString->toString() 
// '1999-12-31 23:59:50.123456'

strval($timeString)  
// '1999-12-31 23:59:50.123456'

$timeString->format('d F Y') 
// '31 December 1999'

$timeString->toTimestamp(); // a float timestamp
$timeString->toDateTime(); // a DateTime object
$timeString->toDateTime('Asia/Tokyo'); // a DateTime object with a given TZ

$newTimestring = $someTimeString->toNewTimeZone($newTimeZone);

$timeString = new TimeString('1999-12-31 23:59:50.123456');

$timeString->toCompactString(); 
// '19991231235950123456'
    
$ts = TimeString::fromCompactString('19991231235950123456');
$ts->toString(); 
// '1999-12-31 23:59:50.123456'

$ts = TimeString::now();   // the current time in PHP's default timezone
$ts = TimeString::now('Europe/Berlin'); // the current time in Berlin

$ts = TimeString::fromTimestamp(1736341528); // from any int or float timestamp
$ts = TimeString::fromTimestamp(1736341528, 'America/Costa_Rica'); // with time zone
$ts = TimeString::fromString('today'); // from any string that DateTime can parse
$ts = TimeString::fromDateTime($someDateTimeObject);

// or let TimeString figure it out
$ts = TimeString::fromVariable($someVariable); 

$timeString = new TimeString('1999-12-31 23:59:50.123456');
$timeStringWithSameValue = clone $timeString;
    
TimeString::equals($timestring, $timeStringWithSameValue); 
// true
TimeString::cmp($timestring, $timeStringWithSameValue); 
// 0

$laterTimeString = new TimeString('2000-12-31 23:59:50.123456');

TimeString::equals($timestring, $laterTimeString); 
// false
TimeString::cmp($timestring, $laterTimeString); 
// 1

$earlierTimeString = new TimeString('1998-12-31 23:59:50.123456');

TimeString::equals($timestring, $laterTimeString); 
// false
TimeString::cmp($timestring, $laterTimeString); 
// -1