Date And Time 1

🔹 1. date()
✅ ما هي؟

دالة تُستخدم لإرجاع التاريخ أو الوقت الحالي بصيغة معينة.

✅ الصيغة:
date( string $format [, int $timestamp = time()] ): string
PHP
✅ أشهر تنسيقات التاريخ والوقت:
الرمزالمعنىمثال
Yالسنة كاملة2025
yالسنة آخر رقمين25
mرقم الشهر06
nرقم الشهر بدون 06
dاليوم مع 003
jاليوم بدون 03
Hالساعة 2416
hالساعة 1204
iالدقائق05
sالثواني33
AAM أو PMAM
lاسم اليومTuesday
Dاختصار اليومTue
✅ أمثلة:
echo date("Y-m-d");             // 2025-06-11
echo date("d/m/Y H:i:s");       // 11/06/2025 18:33:45
echo date("l, jS F Y");         // Wednesday, 11th June 2025
PHP
✅ الفرق بين 12/24 ساعة:
  • H: يعرض الساعة بنظام 24 (مثلاً: 14)
  • h: يعرض الساعة بنظام 12 (مثلاً: 02)
  • A: يعرض AM أو PM
🔹 2. time()
✅ ما هو؟

دالة ترجع الوقت الحالي كـ Timestamp (عدد الثواني منذ 1 يناير 1970).

✅ مثال:
echo time(); // 1728744780
PHP
✅ لماذا Timestamp مهم؟
  • يستخدم في تخزين الوقت في قواعد البيانات.
  • دقيق وقابل للمقارنة والحساب.
  • يمكن تحويله لتاريخ باستخدام date():
echo date("Y-m-d H:i:s", time());
PHP
🔹 3. mktime()
✅ ما هي؟

دالة تقوم بإنشاء Timestamp مخصص لوقت معين.

✅ الصيغة:
mktime(hour, minute, second, month, day, year)
PHP

✅ مثال:

$timestamp = mktime(0, 0, 0, 12, 31, 2025);
echo date("Y-m-d", $timestamp); // 2025-12-31
PHP
🔹 4. strtotime()
✅ ما هي؟

تحول نص طبيعي إلى تاريخ Timestamp.

✅ أمثلة:
echo date("Y-m-d", strtotime("tomorrow"));    // تاريخ الغد
echo date("Y-m-d", strtotime("+1 week"));     // بعد أسبوع
echo date("Y-m-d", strtotime("-3 days"));     // قبل 3 أيام
echo date("Y-m-d", strtotime("2025-06-20"));  // تاريخ محدد
PHP
🔹 5. DateTime Class
✅ ما هي؟

كائن متطور يمثل التاريخ والوقت، ويوفر دوال قوية للتعامل معها.

✅ مثال على الإنشاء:
$dt = new DateTime();
echo $dt->format("Y-m-d H:i:s");
PHP
✅ استخدام مع تاريخ معين:
$dt = new DateTime("2025-12-31 15:30");
echo $dt->format("l, d F Y H:i"); // Wednesday, 31 December 2025 15:30
PHP
✅ الفروقات مع date():
الفرقdate()DateTime
بسيطة وسريعة
مرنة وقابلة للتعديل
تدعم المناطق الزمنية
تدعم المقارنة والحساب
✅ فائدة DateTime:
  • تعديل التاريخ مباشرة:
$dt->modify("+2 days");
PHP
  • مقارنة التواريخ:
$dt1 = new DateTime("2025-06-10");
$dt2 = new DateTime("2025-06-13");
$diff = $dt1->diff($dt2);
echo $diff->days; // 3
PHP