طوابع Unix الزمنية باستخدام 'time()'
جزء من قسم Logic & Flow في رحلة PHP على Coddy — الدرس 47 من 68.
الطابع الزمني لنظام يونكس (Unix timestamp) هو وسيلة لتمثيل لحظة زمنية محددة كرقم واحد. وهو يحسب عدد الثواني التي مرت منذ 1 يناير 1970، الساعة 00:00:00 بالتوقيت العالمي المنسق (UTC)، وهو ما يعرف باسم حقبة يونكس (Unix Epoch). هذا النظام الموحد يسهل على أجهزة الكمبيوتر تخزين التواريخ والأوقات ومقارنتها وإجراء الحسابات عليها.
توفر PHP الدالة time() للحصول على طابع Unix الزمني الحالي. عند استدعاء هذه الدالة، فإنها تُرجع عدد الثواني من بداية تاريخ Unix (Unix Epoch) إلى اللحظة الحالية. يعد هذا الطابع الزمني مفيداً بشكل خاص لأنه مستقل عن المناطق الزمنية ويوفر طريقة متسقة للتعامل مع التواريخ عبر الأنظمة المختلفة.
<?php
$currentTimestamp = time();
echo $currentTimestamp; // يُخرج شيئاً مثل: 1710515425
?>تظهر روعة طوابع Unix الزمنية عندما تدمجها مع دالة date() التي تعلمتها سابقاً. يمكنك تمرير طابع زمني كمعامل ثانٍ لدالة date() لتنسيق أي لحظة زمنية محددة، وليس فقط اللحظة الحالية. وهذا يخلق مزيجاً قوياً للتعامل مع التواريخ في تطبيقاتك.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
التحدي
سهلستتلقى مدخلاً واحداً: طابع زمني بنظام Unix كرقم. سيكون المدخل عبارة عن طابع زمني يمثل لحظة محددة في الوقت (مثال: 1710515425).
اقرأ مدخل الطابع الزمني، واستخدم دالة date() لتنسيق هذا الطابع الزمني إلى تاريخ ووقت قابلين للقراءة، واطبع النتيجة بالتنسيق Y-m-d H:i:s (سنة-شهر-يوم ساعة:دقيقة:ثانية).
تذكر أن date() تقبل طابعاً زمنياً كمعامل ثانٍ لها لتنسيق أي لحظة محددة في الوقت، وليس فقط اللحظة الحالية.
تنسيق المدخلات: سطر واحد يحتوي على طابع زمني بنظام Unix كرقم (مثال: 1710515425)
المخرجات المتوقعة: التاريخ والوقت المنسقان بالتنسيق Y-m-d H:i:s
ورقة مرجعية
يمثل الطابع الزمني لنظام يونكس (Unix timestamp) لحظة زمنية محددة كعدد الثواني منذ 1 يناير 1970، الساعة 00:00:00 بالتوقيت العالمي المنسق (Unix Epoch).
استخدم time() للحصول على الطابع الزمني الحالي لنظام يونكس:
<?php
$currentTimestamp = time();
echo $currentTimestamp; // يخرج شيئاً مثل: 1710515425
?>يمكنك تمرير طابع زمني كمعامل ثانٍ للدالة date() لتنسيق أي لحظة زمنية محددة:
date("Y-m-d H:i:s", $timestamp);استخدم mktime() لإنشاء طوابع زمنية محددة من خلال توفير مكونات التاريخ والوقت:
$timestamp = mktime(hour, minute, second, month, day, year);جرّب بنفسك
<?php
// قراءة الطابع الزمني لـ Unix
$timestamp = intval(fgets(STDIN));
// مهام: اكتب الكود الخاص بك أدناه لتنسيق الطابع الزمني باستخدام ()date
// إخراج التاريخ والوقت المنسقين
echo $formattedDate;
?>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1الدوال المتقدمة
الدوال المجهولةالـ Closures وكلمة 'use'دوال السهمدوال الـ Callbackاستخدام 'call_user_func'دوال المتغيراتالتمرير بالمرجعالدوال العوديةمراجعة: مزيج الدوال4المصفوفات متعددة الأبعاد
إنشاء مصفوفة ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادتعديل عناصر المصفوفة ثنائية الأبعادالتكرار باستخدام الحلقات المتداخلةالمصفوفات الترابطية ثنائية الأبعادمراجعة: تمرين الشبكة البسيطة7التعامل مع التواريخ والأوقات
دالة 'date()'طوابع Unix الزمنية باستخدام 'time()'مقدمة إلى كائن DateTimeتنسيق كائنات DateTimeتعديل كائنات DateTimeمراجعة: حسابات التاريخ2معالجة المصفوفات المتقدمة
الإضافة باستخدام 'array_push'الحذف باستخدام 'array_pop'الإضافة باستخدام 'array_unshift'الحذف باستخدام 'array_shift'دمج المصفوفات المفهرسةدمج المصفوفات الترابطيةالاستخراج باستخدام 'array_slice'القيم باستخدام 'in_array'المفاتيح باستخدام 'array_search'مراجعة: تمرين قائمة التشغيل3ترتيب المصفوفات
ترتيب المصفوفات المفهرسة تصاعدياًترتيب المصفوفات المفهرسة تنازلياًترتيب المصفوفات الترابطية حسب القيمةترتيب المصفوفات الترابطية حسب المفتاحالترتيب بالترتيب الطبيعيالترتيب المخصص باستخدام 'usort'مراجعة: ترتيب لوحة المتصدرين