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

'सेकंड पहले', 'मिनट पहले', 'घंटे पहले' आदि के रूप में तारीख की गणना करना और दिखाना

आप निम्न फ़ंक्शन का उपयोग कर सकते हैं और इसे format_interval(time() - $saved_timestamp) कह सकते हैं , जहां $saved_timestamp उस "ईवेंट" का टाइमस्टैम्प है जिसमें आप रुचि रखते हैं। (निम्न कोड जीएनयू जनरल पब्लिक लाइसेंस v2 या लगातार के तहत लाइसेंस प्राप्त है। ।)

function format_interval($interval, $granularity = 2) {
  $units = array('1 year|@count years' => 31536000, '1 week|@count weeks' => 604800, '1 day|@count days' => 86400, '1 hour|@count hours' => 3600, '1 min|@count min' => 60, '1 sec|@count sec' => 1);
  $output = '';
  foreach ($units as $key => $value) {
    $key = explode('|', $key);
    if ($interval >= $value) {
      $floor = floor($interval / $value);
      $output .= ($output ? ' ' : '') . ($floor == 1 ? $key[0] : str_replace('@count', $floor, $key[1]));
      $interval %= $value;
      $granularity--;
    }

    if ($granularity == 0) {
      break;
    }
  }

  return $output ? $output : '0 sec';
}

$granularity दिखाने के लिए विभिन्न इकाइयों की संख्या है। उदाहरण के लिए, format_interval(32745600) "1 year 2 weeks" return लौटाएगा ।

मैं जो कोड दिखा रहा हूं वह format_interval() यह Drupal 7 के साथ आता है, जो GNU General के अंतर्गत वितरित कोड है। सार्वजनिक लाइसेंस v2 या क्रमिक लाइसेंस। (यह भी देखें COPYRIGHT.txt )
मैंने उस हिस्से को हटा दिया जो Drupal का बहुत विशिष्ट हिस्सा है, और उस कोड को छोड़ दिया जो सादे PHP फ़ंक्शन का उपयोग करता है।



  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. इनर जॉइन स्टेटमेंट में अस्पष्ट कॉलम

  5. कौन सी क्वेरी बेहतर और कुशल है - mysql