استفاده از تاریخ در PHP

php date function
20 آبان 1403

در برنامه‌نویسی وب، گاهی اوقات نیاز داریم تاریخ و زمان را به کاربر نشان دهیم یا با آنها کار کنیم. زبان برنامه‌نویسی PHP امکانات وسیعی برای کار با تاریخ و زمان ارائه می‌دهد. از فرمت‌های مختلف نمایش تاریخ گرفته تا محاسبات پیچیده روی زمان‌ها، PHP در این زمینه بسیار قدرتمند عمل می‌کند.

در ابتدا، ساده‌ترین روش برای نمایش تاریخ و زمان استفاده از تابع date() است. این تابع به شما امکان می‌دهد فرمت‌های مختلفی برای نمایش تاریخ شامل روز، ماه، سال و ساعت را مشخص کنید. به عنوان مثال، اگر بخواهید تاریخ فعلی را به صورت "روز/ماه/سال" نمایش دهید، می‌توانید از این تابع استفاده کنید.

یکی دیگر از مباحث رایج هنگام کار با تاریخ و زمان، تبدیل تاریخ‌ها به یکدیگر است. فرض کنید تاریخ مشخصی را از کاربر دریافت کرده‌اید و نیاز دارید آن را به فرمت دیگری تبدیل کنید یا محاسباتی روی آن انجام دهید. در چنین شرایطی، PHP با ارائه توابعی مانند strtotime() و mktime() این امکان را فراهم کرده است.

وقتی با تاریخ و زمان کار می‌کنیم، یکی دیگر از مباحثی که باید در نظر بگیریم، اختلاف زمانی مختلف است. با توجه به تفاوت زمانی میان منطقه‌های مختلف جهان، ممکن است نیاز باشد تاریخ و زمان را بر اساس منطقه زمانی خاصی تنظیم کنیم. PHP در این زمینه هم امکانات خوبی مانند date_default_timezone_set() ارائه می‌دهد.

در ادامه قسمتی از کد را می‌بینید که چگونگی استفاده از توابع تاریخ و زمان در PHP را نشان می‌دهد:


<?php
// تنظیم منطقه زمانی پیش‌فرض
 date_default_timezone_set('Asia/Tehran');

// نمایش تاریخ و زمان فعلی
 echo 'تاریخ و زمان فعلی به صورت Y-m-d H:i:s: ' . date('Y-m-d H:i:s') . "\r\n";

// محاسبه تاریخ جدید با افزودن ۷ روز
 $newDate = strtotime('+7 days');
 echo 'تاریخ جدید: ' . date('Y-m-d', $newDate) . "\r\n";

?>

خط اول date_default_timezone_set('Asia/Tehran'); | تنظیم منطقه زمانی به "تهران" برای اطمینان از نمایش صحیح زمان.
خط دوم echo 'تاریخ و زمان فعلی به صورت Y-m-d H:i:s: ' . date('Y-m-d H:i:s'); | چاپ تاریخ و زمان فعلی با فرمت مشخص.
خط سوم $newDate = strtotime('+7 days'); | محاسبه تاریخ جدید با افزودن هفت روز به تاریخ جاری.
خط چهارم echo 'تاریخ جدید: ' . date('Y-m-d', $newDate); | نمایش تاریخ محاسبه شده به کاربر.

سوالات متداول

؟

چگونه تاریخ فعلی را در PHP نمایش دهم؟

؟

چگونه می‌توانم اختلاف زمانی بین دو تاریخ را محاسبه کنم؟

؟

چگونه می‌توانم تاریخ را به فرمت دیگری تبدیل کنم؟