تصحيح تاريخ سرور به ساعت واقعي ايران

NabiKAZ

Well-Known Member
سلام
تاريخ و ساعتي كه سرور ، خروجي ميده مثلا اين است :

17:54:00
2005-08-17

در صورتي كه تاريخ و ساعت واقعي بدين صورته:

03:24:00
2005-08-18

به نظر نمياد ساعت سرور روي گرينويچ تنظيم نشده باشه ! چون ساعت سرور از ساعت واقعي 9 ساعت و نيم عقب است !!! كه البته گه گاهي تاريخ اون با تاريخ واقعي يكي در مياد ، اما ساعت مشكل ساز ميشه .

من معمولا از اين فرمت براي نوشتن تاريخ و ساعت در ديتابيس استفاده ميكنم:

"Y-m-d, H:i:s"

حالا اگر ممكنه راهنمايي كنيد چطور ميتونم تصحيح مربوط به تاريخ رو روي خروجي ها اعمال كنم .

باتشكر
نبي
 
آخرین ویرایش:

miladmovie

Active Member
وقتی داری با mktime ثانیه رو بدست میاری باید ثانیه رو + مقدار ثانیه ای کنی که اختلاف زمانی هست مثلا برای تاریخ آلان به ساعت ایران :

PHP:
//10800 = 3(Hour)*60(Minutes )*60(Seconds)
//1800 = 30(Minutes )*60(Seconds)
mktime(date("H"),date("m"),date("i")+10800+1800,date("d"),date("m"),date("Y
"));
 

sama_sally

Member
اگه اختلاف زمان رو توي mktime تنظيم نكني بهتر به ساعت مورد نظرت ميرسي
چون ايران daylight saving ميخواد كه بايد براش برنامه نويسي كني
در ضمن من از g:i:s a بيشتر خوشم مياد
 

Majid

مدیر سایت
عضو کادر مدیریت
من پيشنهادم اينه كه هميشه زمان رو بصورت mktime در ديتا بيس و در فيلد integer ذخيره كني. (با ساعت سرور و يا يك ساعت مبنا)
بعدش موقع نمايش بيا و بصورت ثانيه ، اختلاف زمان سرور رو با محلي كه داره نمايش داده ميشه رو محاسبه كني و به مقدار زماني كه از توي ديتا بيس خارج كردي اضافه كني

موفق باشي

مجيد
 

NabiKAZ

Well-Known Member
سلام
ببخشید خیلی دیر جواب میدم و
از دوستانی که پاسخ دادند ممنون
توصیه آقا مجید رو پیاده کردم و مشکل حل شد.
نبی
 

جدیدترین ارسال ها

بالا