Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

एक्सेल की 41014 तारीख को PHP या जावास्क्रिप्ट में वास्तविक तारीख में बदलें

सीधे PHPExcel दिनांक प्रबंधन कोड से लिया गया:

public static function ExcelToPHP($dateValue = 0) {
    if (self::$ExcelBaseDate == self::CALENDAR_WINDOWS_1900) {
        $myExcelBaseDate = 25569;
        //    Adjust for the spurious 29-Feb-1900 (Day 60)
        if ($dateValue < 60) {
            --$myExcelBaseDate;
        }
    } else {
        $myExcelBaseDate = 24107;
    }

    // Perform conversion
    if ($dateValue >= 1) {
        $utcDays = $dateValue - $myExcelBaseDate;
        $returnValue = round($utcDays * 86400);
        if (($returnValue <= PHP_INT_MAX) && ($returnValue >= -PHP_INT_MAX)) {
            $returnValue = (integer) $returnValue;
        }
    } else {
        $hours = round($dateValue * 24);
        $mins = round($dateValue * 1440) - round($hours * 60);
        $secs = round($dateValue * 86400) - round($hours * 3600) - round($mins * 60);
        $returnValue = (integer) gmmktime($hours, $mins, $secs);
    }

    // Return
    return $returnValue;
}    //    function ExcelToPHP()

स्वयं सेट करें::$ExcelBaseDate ==self::CALENDAR_WINDOWS_1900 आपके द्वारा उपयोग किए जा रहे Excel बेस कैलेंडर को इंगित करने के लिए आवश्यक:Windows 1900 या Mac 1904... सबसे अधिक संभावना 1900

और यदि आप इसके बजाय एक PHP डेटटाइम ऑब्जेक्ट चाहते हैं:

public static function ExcelToPHPObject($dateValue = 0) {
    $dateTime = self::ExcelToPHP($dateValue);
    $days = floor($dateTime / 86400);
    $time = round((($dateTime / 86400) - $days) * 86400);
    $hours = round($time / 3600);
    $minutes = round($time / 60) - ($hours * 60);
    $seconds = round($time) - ($hours * 3600) - ($minutes * 60);

    $dateObj = date_create('1-Jan-1970+'.$days.' days');
    $dateObj->setTime($hours,$minutes,$seconds);

    return $dateObj;
}    //    function ExcelToPHPObject()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैसकल डेटिफ क्वेरी

  2. mysql सीमा ढह जाती है, जिसके परिणामस्वरूप डेटा इंटरैक्शन होता है

  3. mysql निष्पादन समय

  4. पूरी तरह से FIFOs के माध्यम से MySQL क्लाइंट से अटैच करें

  5. तालिका_नाम \ G से चयन * में \ G क्यों?