Tuesday, 19 January 2016

COUNT DIFFRENT 2 DATE IN MYSQL USING CODEIGNTER

now i'm working on about date and time and will give you short tutorial about count diffrent date between two dates, well i'm fun using codeignter then spend some hours i found some blog intresting and help me a lot

check this out the authtoor tell how to count 2 date, so i change it to CODEIGNTER

first go to your and create datediff_helper.php
 <?php  
 // Set timezone  
  date_default_timezone_set("UTC");  
  // Time format is UNIX timestamp or  
  // PHP strtotime compatible strings  
  function dateDiff($time1, $time2, $precision = 6) {  
   // If not numeric then convert texts to unix timestamps  
   if (!is_int($time1)) {  
    $time1 = strtotime($time1);  
   }  
   if (!is_int($time2)) {  
    $time2 = strtotime($time2);  
   }  
   // If time1 is bigger than time2  
   // Then swap time1 and time2  
   if ($time1 > $time2) {  
    $ttime = $time1;  
    $time1 = $time2;  
    $time2 = $ttime;  
   }  
   // Set up intervals and diffs arrays  
   $intervals = array('year','month','day','hour','minute','second');  
   $diffs = array();  
   // Loop thru all intervals  
   foreach ($intervals as $interval) {  
    // Create temp time from time1 and interval  
    $ttime = strtotime('+1 ' . $interval, $time1);  
    // Set initial values  
    $add = 1;  
    $looped = 0;  
    // Loop until temp time is smaller than time2  
    while ($time2 >= $ttime) {  
     // Create new temp time from time1 and interval  
     $add++;  
     $ttime = strtotime("+" . $add . " " . $interval, $time1);  
     $looped++;  
    }  
    $time1 = strtotime("+" . $looped . " " . $interval, $time1);  
    $diffs[$interval] = $looped;  
   }  
   $count = 0;  
   $times = array();  
   // Loop thru all diffs  
   foreach ($diffs as $interval => $value) {  
    // Break if we have needed precission  
    if ($count >= $precision) {  
     break;  
    }  
    // Add value and interval  
    // if value is bigger than 0  
    if ($value > 0) {  
     // Add s if value is not 1  
     if ($value != 1) {  
      $interval .= "s";  
     }  
     // Add value and interval to times array  
     $times[] = $value . " " . $interval;  
     $count++;  
    }  
   }  
   // Return string with times  
   return implode(", ", $times);  
  }  
 ?>  




Then goes to autoload.php
 $autoload['helper'] = array('datediff');  


Then this is the controller
 <?php  
 if (!defined('BASEPATH'))  
   exit('No direct script access allowed');  
 class Login extends CI_Controller  
 {  
   function __construct()  
   {  
     parent::__construct();  
    }  
   public function index()  
   {  
      $this->template->load('template', 'login');  
   }  
 public function diffdate()  
   {  
     echo dateDiff('00:57:42','07:30:00');  
   }  
 }  
 </textare>  


The results here








You can grab helper is here




No comments:

Post a Comment