English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
دليل PHP Date & Time Functions
دالة date_diff() تعود الفارق بين جسمين من DateTime.
دالة date_diff() هي اسم بديل لدالة DateTime::diff. تأخذ كلاهما جسمين من DateTime وتحسب الفارق بينهما.
date_diff($datetime1, $datetime2[, $absolute])
الترقيم | الخيارات والشرح |
---|---|
1 | datetime1(ضروري) هذا جسم DateTime يمثل أحد التواريخ التي يتم مقارنتها. |
2 | $datetime2 (ضروري) هذا جسم DateTime يمثل أحد التواريخ التي يتم مقارنتها. |
3 | $absolute (اختياري) قيمة بولية تعبر عن ما إذا كان الفارق يجب أن يكون إيجابياً |
دالة PHP date_diff() تعود بجسم DateInterval الذي يشير إلى الفارق بين تاريخين معينين. إذا فشلت الدالة، تعود بالفارق بين التاريخينfalse.
تم إدخال هذه الدالة أولاً في إصدار PHP 5.3.0، ويمكن استخدامها في جميع الإصدارات الأعلى.
مثال علىdate_diff()استخدام الدالة -
<?php //إنشاء عمود تاريخي $date1 = date_create("25-09-1989"); $date2 = date_create("1-09-2012"); $interval = date_diff($date1, $date2); print($interval->format('%Y years %d days')); ?>اختبار لرؤية‹/›
نتيجة الخروج
22 years 7 days
مثال يوضح حساب الفرق بين تاريخ معين وتاريخ الحالي
<?php $date1 = date_create("25-09-1989"); $date2 = date_create(); $interval = date_diff($date1, $date2); print($interval->format('%Y سنة %d يوم')); ?>اختبار لرؤية‹/›
نتيجة الخروج
30 سنة 14 يوم
حساب الفرق بين تاريخين:
<?php //إنشاء عمود تاريخي $date1 = date_create("2012-05-09"); $date2 = date_create("2014-01-09"); $interval = date_diff($date1, $date2); print($interval->format('%Y سنة %m شهر %d يوم')); print("\n"); $date3 = date_create("1989-08-25"); $date4 = date_create("2012-03-19"); $interval = date_diff($date3, $date4); print($interval->format('%Y سنة %m شهر %d يوم')); print("\n"); $date5 = date_create("2002-11-16"); $date6 = date_create("2014-12-23"); $interval = date_diff($date5, $date6); print($interval->format('%Y سنة %m شهر %d يوم')); print("\n"); $date7 = date_create("1989-0-09"); $date8 = date_create("2013-05-14"); $interval = date_diff($date7, $date8); print($interval->format('%Y سنة %m شهر %d يوم')); ?>اختبار لرؤية‹/›
نتيجة الخروج
01 سنة 8 شهر 0 يوم 22 سنة 6 شهر 23 يوم 12 سنة 1 شهر 7 يوم 24 سنة 5 شهر 5 يوم