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

विभाजित दिनांक संबंधित सप्ताहों में होती है

यह स्निपेट रविवार को सप्ताह के पहले दिन के रूप में उपयोग करता है:

    $start = new DateTime('2014-10-01');
    $end = new DateTime('2014-10-31 23:59');
    $interval = new DateInterval('P1D');
    $dateRange = new DatePeriod($start, $interval, $end);

    $weekNumber = 1;
    $weeks = array();
    foreach ($dateRange as $date) {
        $weeks[$weekNumber][] = $date->format('Y-m-d');
        if ($date->format('w') == 6) {
            $weekNumber++;
        }
    }

प्रत्येक सप्ताह में सभी दिन होंगे।

यदि आप केवल प्रत्येक सप्ताह के पहले और अंतिम दिन चाहते हैं तो आप बस array_shift . का उपयोग कर सकते हैं और array_pop उन्हें पाने के लिए। उदाहरण के लिए, पहले सप्ताह के लिए आप इसका उपयोग कर सकते हैं:

    $wk1Start = array_shift($weeks[1]); //gives you first day of week 1
    $wk1End = array_pop($weeks[1]); // give you the last day of week 1

यदि आप प्रत्येक सप्ताह के लिए आरंभ और समाप्ति तिथियां चाहते हैं, तो इसे करने का एक तरीका यहां दिया गया है:

    $ranges = array_map(function($week) {
        return 'start: ' . array_shift($week) 
            . ', end: ' . array_pop($week); },
    $weeks);

यह $ranges . का आउटपुट है मेरे लिए:

    Array
    (
        [1] => start: 2014-10-01, end: 2014-10-04
        [2] => start: 2014-10-05, end: 2014-10-11
        [3] => start: 2014-10-12, end: 2014-10-18
        [4] => start: 2014-10-19, end: 2014-10-25
        [5] => start: 2014-10-26, end: 2014-10-31
    )


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस से ड्रॉपडाउन मान कैसे प्राप्त करें और jsp . में प्रदर्शित करें

  2. php+mysql:mysql में एक php ऐरे डालें

  3. मैं mysql देशी json फ़ंक्शन का उपयोग करके नेस्टेड json ऑब्जेक्ट कैसे उत्पन्न करूं?

  4. PDO दूरस्थ mysql सर्वर को कनेक्ट नहीं कर सकता

  5. क्षैतिज परिणाम बनाने के लिए इस ईव क्वेरी को कैसे बनाएं