Example #1
0
 public function testIsTimestamp()
 {
     $this->assertFalse(is_timestamp('bla'));
     $this->assertFalse(is_timestamp(0));
     $this->assertFalse(is_timestamp(17));
     $this->assertTrue(is_timestamp((string) time()));
 }
 function time_passed($timestamp)
 {
     //type cast, current time, difference in timestamps
     //date_default_timezone_set('Asia/Calcutta');
     if (is_timestamp($timestamp)) {
         $timestamp = $timestamp;
     } else {
         $timestamp = strtotime($timestamp);
     }
     //$timestamp = strtotime($timestamp);
     $current_time = time();
     $diff = $current_time - $timestamp;
     //echo "$current_time - $timestamp";die;
     //intervals in seconds
     $intervals = array('year' => 31556926, 'month' => 2629744, 'week' => 604800, 'day' => 86400, 'hour' => 3600, 'minute' => 60);
     //now we just find the difference
     if ($diff == 0) {
         return 'just now';
     }
     if ($diff < 60) {
         return $diff == 1 ? $diff . ' second ago' : $diff . ' seconds ago';
     }
     if ($diff >= 60 && $diff < $intervals['hour']) {
         $diff = floor($diff / $intervals['minute']);
         return $diff == 1 ? $diff . ' minute ago' : $diff . ' minutes ago';
     }
     if ($diff >= $intervals['hour'] && $diff < $intervals['day']) {
         $diff = floor($diff / $intervals['hour']);
         return $diff == 1 ? $diff . ' hour ago' : $diff . ' hours ago';
     }
     if ($diff >= $intervals['day'] && $diff < $intervals['week']) {
         $diff = floor($diff / $intervals['day']);
         return $diff == 1 ? $diff . ' day ago' : $diff . ' days ago';
     }
     if ($diff >= $intervals['week'] && $diff < $intervals['month']) {
         $diff = floor($diff / $intervals['week']);
         return $diff == 1 ? $diff . ' week ago' : $diff . ' weeks ago';
     }
     if ($diff >= $intervals['month'] && $diff < $intervals['year']) {
         $diff = floor($diff / $intervals['month']);
         return $diff == 1 ? $diff . ' month ago' : $diff . ' months ago';
     }
     if ($diff >= $intervals['year']) {
         $diff = floor($diff / $intervals['year']);
         return $diff == 1 ? $diff . ' year ago' : $diff . ' years ago';
     }
 }
Example #3
0
function is_today($test)
{
    $time = is_timestamp($test) ? strtotime($test) : $test;
    if (date('Ymd') === date('Ymd', (int) $time)) {
        return TRUE;
    }
    return FALSE;
}
 /**
  * 
  * @param int|string $a_timestamp
  * @param string $pattern According to http://php.net/manual/en/function.strftime.php
  * @throws GenericException
  * @return string
  */
 public function format_date($a_timestamp, $pattern = null)
 {
     if (!is_timestamp($a_timestamp)) {
         throw new GenericException('Invalid Timestamp', 500);
     }
     if (isset($this->locale_entries[$pattern])) {
         $pattern = $this->locale_entries[$pattern];
     }
     return strftime($pattern, strtotime($a_timestamp));
 }
Example #5
0
 /**
  * Fetch all fields' names and values
  * 
  * @param string $field
  *        Field name
  * @param mixed $value
  *        Field value
  */
 protected final function _set_field($field, $value)
 {
     if ($this->field_loaded == 0) {
         $this->_load();
     }
     if (is_timestamp($value) && !is_numeric($value)) {
         $datetime = new DateTime('now');
         $time = strtotime($value);
         $time -= $datetime->getOffset();
         $value = date("Y-m-d H:i:s", $time);
     }
     $this->database_fields[$field] = $value;
     $this->modified = 1;
     $this->modified_fields[$field] = true;
 }