60% تخفیف ویژه دوره تخصصی وردپرس به مدت محدود مشاهده دوره

آموزش کامل توابع تاریخ و زمان در php

توابع کار با تاریخ و زمان در php

 

توابع تاریخ و زمان در php یکی دیگر از توابع پرکاربرد در زبان برنامه نویسی php است که برای تعیین زمان استفاده می شود. با کمک این توابع ما می توانیم زمان و تاریخ را با زمان سرور همگام سازی کنیم یا اینکه آنرا براساس زمان اختیاری تغییر دهیم. این توابع در php ، قسمتی از هسته محسوب می شوند. در این ویدیو قصد داریم به بررسی توابع تاریخ و زمان در php بپردازیم. با ما همراه باشید.

 

توابع کار با تاریخ در php

توابع کار با تاریخ در php ، برای تنظیم تاریخ  استفاده می شود. با استفاده از این توابع می توان تاریخ و زمان فعلی را برحسب منطقه زمانی سیستم تنظیم کرد یا اینکه به صورت دستی آن را تغییر داد. پیش تر در بخش مربوط به معرفی توابع مهم در php ، معرفی مقدماتی پیرامون بحث توابع تاریخ و زمان در php داشتیم. در این قسمت قصد داریم به بررسی کامل این توابع بپردازیم . در ادامه به یکسری از مهم ترین و پر کاربردترین توابع کار با تاریخ در php را بررسی می کنیم.

 

تابع date در php

یکی از اصلی ترین این توابع، تابع date در php است .

این تابع برای تنظیم تاریخ با فرمت های مختلف، کاربرد دارد، این تابع دو پارامتر ورودی دارد:

  1. مهر زمان یا timestamp : که این پارامتر به صورت اختیاری است و پایه و مبنای اطلاعات فرمت خروجی را مشخص می کند. به بیان دیگر تاریخ را براساس یک رویداد خاص نمایش می دهد مثلا تاریخ شروع از ابتدای ماه ژانویه سال ۲۰۱۸ باشد.
  2. فرمت خروجی برای تاریخ (format): این پارامتر به صورت رشته ای وارد می شوند. این رشته فرمت خاصی دارد که برای وارد کردن مقادیر تاریخ استفاده می شود. چند نمونه از کاراکتر های موجود در این فرمت در زیر ارائه شده است:

d : عدد روز ماه را نشان می دهد. این نمایش به صورت عدد دو رقمی است.

D : روز هفته را با سه حرف نشان می دهد.

j : روز ماه را به صورت یک عدد یک رقمی یا دو رقمی نشان می دهد.

I : روز هفته را به صورت کامل نمایش می دهد.

N : روز هفته را به صورت عدد نمایش می دهد.

z : شماره روز سال را نشان می دهد. (۰-۳۶۵)

لیست کامل پارامترهای فرمت تاریخ در را می توانید در این لینک مشاهده نمایید.

 

هر فرمت خروجی یک ترکیب از این پارامترهای تاریخ است که برای نمایش روز، ماه و سال و… استفاده می شود. همچنین برای جداسازی این پارامترها از کاراکترهای – و . و… می توان استفاده کرد.

در ادامه مثال هایی از تابع date در php نشان داده شده است.

همچنین یک سری از این پارامترهای فرمت تاریخ برای تعیین زمان و ساعت استفاده می شود. به عنوان مثال چند نمونه از این فرمت ها عبارتند از :
: نمایش ساعت براساس قالب ۱۲ ساعته به صورت دو رقمی

i : نمایش دقیقه از ۰۰ تا ۵۹ به صورت دو رقمی

s : نمایش ثانیه از ۰۰ تا ۵۹ به صورت دو رقمی

a : نمایش قبل و بعد از ظهر بودن فرمت ساعت ۱۲ ساعته (pm/am)
ز این فرمت برای نمایش ساعت استفاده می شود. تابع date زمان را براساس تاریخ و زمان سرور تنظیم می کند. در ادامه یک مثال از تنظیم زمان با استفاده از تابع date در php را ملاحظه می کنید:

نکته : در توابع تاریخ و زمان در php ، برای تنظیم تاریخ به صورت شمسی شما نیاز دارید که از فایل jdf  و تابع jdate() استفاده کنید. همچنین می توانید از کتابخانه هایی مثل datetimepicker برای تقویم شمسی استفاده کنید.

 

 

تابع  date_default_timezone_set 

در توابع تاریخ و زمان در php معمولا تاریخ های خروجی، براساس منطقه زمانی پیش فرض تنظیم می شود. اما برای هر کشور یک منطقه زمانی مجزا وجود دارد. مثلا برای کشور ایران این منطقه زمانی Asia/Tehran است که زمان را بر طبق ساعت ایران نشان می دهد. برای اینکه زمان خروجی را طبق موقعیت مکانی خود تنظیم کنیم، باید منطقه زمانی را تغییر دهیم برای این کار یکسری توابع تاریخ و زمان در php وجود دارد.  یکی از این تابع ()date_default_timezone_get است. این تابع برای دریافت منطقه زمانی فعلی ثیت شده کاربرد دارد.تابع دیگر  date_default_timezone_set است که این تابع برای تنظیم مقدار منطقه زمانی فعلی در فایل php.ini استفاده می شود. ورودی این تابع یک پارامتر timezone_identifier است که منطقه زمانی را در قالب یک رشته دریافت می کند. مثال زیر نمونه ای از این تابع را نشان می دهد:

 

 

تابع time در php

یکی دیگر از توابع پرکاربرد دیگر، تابع time در php است. این تابع نیز تاریخ و زمان فعلی را نشان می دهد. این تابع برای نمایش تاریخ و زمان آنرا به یک رشته عدد تبدیل می کند و برمی گرداند. در قطعه کد زیر مثالی از تابع time در php را مشاهده می کنید.

 

 

تابع ()mktime در php

تابع ()mktime در php را زمانی استفاده می کنیم که بخواهیم یک زمان مشخص را برای تاریخ تعریف کنیم. این تابع مقادیر روز، ماه، سال، ساعت ، دقیقه و ثانیه را به عنوان ورودی دریافت می کند و آنرا به عنوان تاریخ فعلی تنظیم می نماید. در کد زیر قالب کلی این تابع نمایش داده شده است:

بعنوان مثال تاریخ زیر بصورت دستی برای این تابع تعریف شده است:

خروجی این تابع به فرم زیر نمایش داده می شود :
Date–14/6/10&Time–12:30:15pm

 

 

تابع strtotime در php

تابع strtotime در php یکی دیگر توابع تاریخ و زمان در php است. روند کار این تابع  به این صورت است یک مقدار رشته ای را به یک عدد تبدیل می کند. این تابع تنها یک پارامتر به عنوان ورودی دریافت می کند که پارامتر زمان است. این رشته ورودی باید به یک فرمت قابل شناسایی بوده تا امکان تبدیل آن به عدد وجود داشته باشد. بعنوان مثال می توان این رشته را به صورت دستی وارد کرد. در قطعه کد زیر یک نمونه از تابع strtotime در php را ملاحظه می کنید:

خروجی این تابع به صورت زیر است:

۲۰۱۴/۲/۲۰

نکته قابل توجه در مثال های گفته شده در بالا این است که خروجی توابعی مثل تابع strtotime در php یا تابع ()mktime می تواند به عنوان آرگومان ورودی برای تابع date() استفاده شود.

 

تابع jdate

تابع jdate یکی از مهم ترین توابع تاریخ و زمان در php و از توابع کتابخانه jdf است که برای نمایش تاریخ شمسی به کار می رود. فرمت این تابع به صورت زیر است:

;(jdate(format, timestamp, none, time_zone, num_lang

از میان پارامترهای این تابع، تنها پارامتر format اجباری است و مابقی پارامترها اختیاری هستند. در صورتی که مقداری برای پارامترها قرار داده نشود، مقدار پیش فرض زیر داخل آن تعریف می شود.

;(‘jdate(format, time(), none, ‘Asia/Tehran’, ‘fa

پارامتر دوم، زمان فعلی را نشان می دهد، پارامتر چهارم مربوط به منطقه زمانی است و آخرین پارامتر نیز برای نمایش زبان مورداستفاده را به کار می رود و fa مخفف زبان فارسی است. برای نمایش فرمت های مختلف تاریخ، در این تابع باید فرمت ها را در پارامتر اول تابع قرار دهیم. گفتیم که این پارامتر اجباری است. بعنوان مثال توابع زیر فرمت های مختلف برای نمایش تاریخ شمسی را نشان می دهد البته تاریخ شمسی یک فرمت مشخص دارد که معمولا همان را قرار می دهیم.

حروف استفاده شده در فرمت های کد همان حروف تعریف شده برای تابع date است. نمایش این قطعه کد بصورت زیر است:

برای اینکه بخواهیم روز هفته را با استفاده از این تابع بدست آوریم از دستور زیر استفاده می کنیم:

حرف “L” نام روز هفته را نشان می دهد. خروجی کد بالا نمایش عبارت “شنبه” است.

برای اینکه بخواهیم تاریخ فعلی را با حروف نشان دهیم می توانیم آنها را به این صورت در تابع jdate وارد می کنیم:

حروف بالا به ترتیب از چپ به راست نشان دهنده نام روز هفته، شماره روز، نام ماه و شماره سال است. خروجی این قطعه کد بصورت زیر خواهد بود:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *