آموزش PHP

آموزش PHP – تاریخ و زمان

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

 دریافت  Time Stamp با ()Time

تابع () time در php به شما تمام اطلاعاتی را که در مورد تاریخ و زمان فعلی نیاز دارید می دهد. این امر مستلزم هیچ استدلالی نیست اما یک عدد صحیح را نشان می دهد. عدد صحیح که توسط () time نشان داده می شود، نشان دهنده تعداد ثانیه هایی است که از نیمه شب GMT در تاریخ 1 ژانویه 1970 سپری شده است.

این لحظه به عنوان دوره یونیکس یا UNIX epoch شناخته می شود و به تعداد ثانیه هایی که از آن زمان سپری شده به عنوان  time stampاشاره می گردد.

<?php
   print time();
?>

نتیجه زیر را تولید می کند:

1480930103

همانطور که می بینید برای درک دشوار است. اما PHP ابزار بسیار خوبی برای تبدیل time stamp به یک فرم ارائه داده که انسان ها با آن راحت تر هستند. 

تبدیل time stamp با ()getdate

تابع ()getdate به صورت اختیاری یک time stamp می پذیرد و آرایه associative حاوی اطلاعات مربوط به تاریخ را می دهد. اگر time stamp را حذف کنید، با تایمر فعلی که time () آن را باز گردانده، کار می کند. جدول زیر عناصر موجود در آرایه را که توسط ()getdate باز گردانده شده لیست می کند.

کلید شرح مثال
seconds ثانیه گذشته نسبت به یک دقیقه (0-59) 20
minutes دقیقه گذشته نسبت به یک ساعت (0-59) 29
hours ساعت روز (0-23) 22
mday روز ماه (1-31) 11
wday روز هفته (0-6) 4
mon ماه سال (1-12) 7
year سال (4 رقم) 1997
yday روز از سال (0-365) 19
weekday روز هفته Thursday
month ماه از سال January
0 Timestamp 948370048

 اکنون کنترل کامل تاریخ و زمان را دارید. می توانید این تاریخ و زمان را به هر فرمت ای که می خواهید تغییر دهید.

 مثال

مثال زیر را امتحان کنید:

<?php
   $date_array = getdate();
   
   foreach ( $date_array as $key => $val ){
      print "$key = $val<br />";
   }
	
   $formated_date  = "Today's date: ";
   $formated_date .= $date_array['mday'] . "/";
   $formated_date .= $date_array['mon'] . "/";
   $formated_date .= $date_array['year'];
   
   print $formated_date;
?>

نتیجه زیر را تولید می کند:

seconds = 10
minutes = 29
hours = 9
mday = 5
wday = 1
mon = 12
year = 2016
yday = 339
weekday = Monday
month = December
0 = 1480930150
Today's date: 5/12/2016

 

تبدیل Timestamp با ()date

تابع ()date یک رشته فرمت شده را که نشان دهندۀ یک تاریخ است را باز می گرداند. می توانید مقدار عظیمی از کنترل را بر روی فرمت ()date با یک آرگومان رشته ای که باید به آن منتقل شود را بازگردانید.

date(format,timestamp)

()date به صورت اختیاری یک Timestamp را حذف می کند، سپس تاریخ و زمان فعلی مورد استفاده قرار می گیرد. هر داده دیگری که در رشته فرمت به ()date وارد شده است، در مقدار بازگشتی موجود می باشد. جدول زیر لیست کد هایی را که یک رشته فرمت می تواند شامل شود را نشان می دهد:

فرمت شرح مثال
a "am" یا "pm" با حروف کوچک pm
A "AM" یا "PM" با حروف بزرگ PM
d روز ماه، عددی که با صفر شروع می شود 20
D روز هفته (سه حرف) Thu
F نام ماه January
h ساعت (12- فرمت ساعت، به صفر منتهی می شود) 12
H ساعت (24-فرمت ساعت، به صفر منتهی می شود) 22
g ساعت (12- فرمت ساعت، به صفر منتهی نمی شود) 12
G ساعت (24-فرمت ساعت، به صفر منتهی نمی شود) 22
i دقیقه ها (0-59) 23
j روز ماه (به صفر منتهی نمی شود) 20
l )L کوچک) روز هفته Thursday
L

سال کبیسه("1" برای بله، "2" برای خیر)

1
m ماه از سال (عدد- به صفر منتهی می شود) 1
M ماه از سال (سه حرف) Jan
r فرمت تاریخ RFC 2822 Thu, 21 Dec 2000 16:01:07 +0200
n ماه از سال (عدد- به صفر منتهی نمی شود) 2
s ثانیه از ساعت 20
U Time stamp 948372444
y سال (دو حرف) 06
Y سال (4 رقم) 2006
z روز از سال (0-365) 206
Z

افست در ثانیه از GMT

+5

 مثال

مثال زیر را امتحان کنید:

<?php
   print date("m/d/y G.i:s<br>", time());
   print "Today is ";
   print date("j of F Y, a\t g.i a", time());
?>

نتیجه زیر را تولید می کند:

12/05/16 9.29:47Today is 5 2016f December 2016, at 9.29 am

امیدوارم درک خوبی از نحوه قالب بندی تاریخ و زمان با توجه به نیاز تان را داشته باشید. برای مرجع شما یک لیست کامل از تمام توابع تاریخ و زمان در توابع Date & Timeپی اچ پی ارائه شده است.

در صورتی که سوال و یا نظری دارید، از بخش نظرات با ما در میان بگذارید.

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

شما چه نظر و یا سوالی درباره این نوشته دارید؟

مبحث آموزشی

آموزش PHP

Learn PHP

سرفصل ها

پرســیدن سؤال جدید

سؤال های تخصصی خود را از ما بپرسید

دنبال کردن تلگرام کانال سافت اسکیل

https://telegram.me/softskill_ir

عملیات کاربران

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

کلیک کنید و سوالات خود را از ما بپرسید
لطفا فرم سوال را پر کنید

سوال شما با موفقیت ثبت شد. برای اینکه بتوانیم به شما اطلاع رسانی کنیم، موارد زیر را وارد کنید:

لطفا چند لحظه منتظر بمانید ...