مجتبی
3 سال پیش توسط مجتبی مطرح شد
5 پاسخ

مشکل ساعت اشتباه در لاراول

سلام
به طور مثال الان ساعت 3:38 صبحه
من دستور زیر رو میزنم در لاراول

Carbon::now()

تاریخ به درستی نمایش میده ولی زمان رو یک ساعت جلوتر یعنی 4:38 نشون میده!

timezone هم اوکی کردم و cache:clear , config:clear هم زدم

ولی همیشه یک ساعت جلوتر نشون میده!
چکار کنم؟
@mohaligateway @muhammad
@ali.bayat
@hesammousavi


ثبت پرسش جدید
Muhammad
تخصص : Back-End Developer
@muhammad 3 سال پیش آپدیت شد
0

سلام. با متد ()getTimezone تست کنین.


moha li
تخصص : توسعه دهنده لاراول و Vue
@mohaligateway 3 سال پیش مطرح شد
0

سلام
برای php دو نوع استاندارد وجود داره. مواردی به صورت پیشفرض تعریف شده است. مثلا Asia/Tehran. ولی استاندارد UTC براساس ISO8601 هم برای زبان های برنامه نویسی به صورت استاندارد قرار داده شده است. می تونید از استاندارد UTC هم استفاده کنید. UTC+3:30
@mojtaba.kh


رضا پارسیان
تخصص : توسعه دهنده Php , Laravel
@Rp76 3 سال پیش مطرح شد
-1

سلام وقتتون بخیر!
توی لاراول داخل فایل های کانفیگ میتونید Time zone رو عوض کنید!
توی پوشه config فایل app.php
تقریبا خط 72

    'timezone' => 'Asia/Tehran',

woz
تخصص : fan of open source world
@wozniak 1 سال پیش مطرح شد
0

من هم همین مشکل شما رو دارم داخل یه پروژه

تایم زون ایران/تهران به درستی داخل لاراول ست شده است. ,ولی همین تایم زون رو با +0430 ست کرده
یعنی DST تاثیر داده شده

لطفا اگر نتیجه گرفتید اینجا اعلام بفرمایید


re.taheri
تخصص : کارشناس شبکه، برنامه نویس لارا...
@re.taheri 9 ماه پیش مطرح شد
0

من هم همین مشکل رو دارم و هر چی جستجو کردم به نتیجه ای نرسیدم که UTC+4:30 را تبدیل به UTC+3:30 کنم ولی تا وقتی که مشکل ریشه ای حل بشه گفتم اینو با شما در میون بذارم:
وقتی رکوردی insert میشه داخل جدول، ساعت رو خودش +4:30 در نظر می گیره برای مثلا فیلد created_at و 1 ساعت بهش اضافه می کنه و اگر تابع now() رو هم فراخوانی کنید باز 1 ساعت جلوتر هست بنابراین چون در هر دو صورت، خودش 1 ساعت جلوتر کشیده ساعت رو؛ عملا اگر شما بخواهید ساعت now را با ساعت created_at مقایسه کنید عدد درستی به شما بر می گردونه.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام