سلام دوستان

،
توي اين مبحث مي خوام در مورد استفاده از تاريخ و ساعت گرينويچ (Greenwich Time) توي پروژه هاي PHP صحبت کنم.
کاربرد:
1- شما مي توانيد به کاربران سايت خود اين امکان رو بدهيد که هر جاي دنيا که باشند تمامي تاريخ و ساعت ها را به همون جا داشته باشند.
2- معمولا ساعت Server ها با ساعت ما set نيستند.
خوب براي اين کار فيلد Date و Time رو در DataBase تون از نوع Int بگيريد.
تابع time در php لحظه جاري رو به صورت يک عدد صحيح (Integer) به گرينويچ بر مي گردونه... که اين عدد شامل ثانيه، دقيقه، ساعت، روز، ماه و سال هست.
طرض استفاده ازش هم اينطوريه:
کد:
<?php
$Now = time();
print ( $Now);
?>
توضيحات بيشتر در مورد اين تابع:
http://ir.php.net/manual/en/function.time.phpخروجي:
کد:
1205692465
خوب حالا براي ذخيره تاريخ و ساعت در DataBase همين عدد رو ذخيره مي کنيم.
- حالا خوندنش
براي خوندنش چون به گرينويچ هست اول بايد به ميزان اختلاف ساعت جايي که مي خواييم بهش اضافه کنيم يا ازش کم کنيم. و اين اختلاف رو بايد به ثانيه تبديل کنيم. مثلا براي ايران که اختلاف 3.5+ ساعت داره، اين طوريه:
کد:
<?php
$TheTime = time();
$TimeZone = 3.5;
$TheTime += $TimeZone * 3600;
print ( $TheTime);
?>
حالا که تاريخ و ساعت رو به صورت يک عدد صحيح به دست آورديم اونو به شکلي که مي خواييم نمايش مي ديم. براي اين کار از تابع gmdate استفاده مي کنيم:
کد:
<?php
$TheTime = time();
$TimeZone = 3.5;
$TheTime += $TimeZone * 3600;
$StrTime = gmdate( "Y/m/d - g:i A", $TheTime);
print( $StrTime);
?>
توضيحات بيشتر در مورد اين تابع:
http://ir.php.net/manual/en/function.gmdate.phpپارامتر اول اين تابع مثل همون چيزيه که به ورودي تابع date مي ديم. دوميش هم که time هست.
اميدوارم اين آموزش کوچولو به دردتون بخوره...
موفق باشيد.
