توفر PHP عدة طرق لاسترجاع التاريخ والوقت الحاليين. تستعرض هذه المقالة طريقتين شائعتين وفعالين: استخدام الدالتين المدمجتين date()
و time()
، والاستفادة من فئة DateTime
.
جدول المحتويات
استخدام دالتي date()
و time()
توفر دالتا date()
و time()
طريقة مباشرة للحصول على التاريخ والوقت الحاليين. تُرجع time()
طابع زمني يونكس الحالي (ثوانٍ منذ 1 يناير 1970)، بينما تقوم date()
بتنسيق هذا الطابع الزمني إلى سلسلة نصية قابلة للقراءة.
دالة time()
:
<?php
$timestamp = time();
echo "طابع زمني يونكس الحالي: " . $timestamp;
?>
دالة date()
:
تأخذ date()
سلسلة تنسيق كوسيطة أولى وطابعًا زمنيًا يونكس اختياريًا كوسيطة ثانية. إذا لم يتم تقديم طابع زمني، فإنها تستخدم الوقت الحالي. تحدد سلسلة التنسيق المخرجات.
<?php
$currentDate = date("Y-m-d H:i:s"); // تنسيق ISO 8601
echo "التاريخ والوقت الحاليان (ISO 8601): " . $currentDate . "<br>";
$currentDate = date("F j, Y, g:i a"); // التاريخ المُنسّق
echo "التاريخ والوقت الحاليان (مُنسّق): " . $currentDate;
?>
قد يُخرج هذا:
التاريخ والوقت الحاليان (ISO 8601): 2023-10-27 16:45:00
التاريخ والوقت الحاليان (مُنسّق): أكتوبر 27, 2023, 4:45 م
يرجى الرجوع إلى دليل PHP للحصول على قائمة كاملة بأحرف التنسيق.
استخدام فئة DateTime
توفر فئة DateTime
نهجًا أكثر توجّهًا نحو الكائنات، مما يوفر مرونة أكبر، خاصةً لعمليات معالجة التاريخ/الوقت المعقدة.
<?php
$dateTime = new DateTime();
echo "التاريخ والوقت الحاليان: " . $dateTime->format("Y-m-d H:i:s");
?>
يُنشئ هذا كائنًا من فئة DateTime
ويُنسّقه. تستخدم طريقة format()
نفس سلاسل التنسيق مثل date()
.
تُبسّط DateTime
إضافة أو طرح الفترات:
<?php
$dateTime = new DateTime();
$dateTime->add(new DateInterval("P1D")); // إضافة يوم واحد
echo "تاريخ الغد: " . $dateTime->format("Y-m-d");
?>
اختيار الطريقة المناسبة
لاسترجاع التاريخ والوقت البسيط، تكفي دالتا date()
و time()
. للسيناريوهات الأكثر تعقيدًا، بما في ذلك معالجة التاريخ والتعامل مع المناطق الزمنية، توفر فئة DateTime
إمكانيات متفوقة، ويُنصح بها بشكل عام.