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

پرسیده شده
فعالیت 1469 روز پیش
دیده شده 965 بار
1

باسلام استاد من میخواستم یکسری امکانات برای پروژه 7todo اضافه کنم و برای اون امکانات باید با توابع تاریخ و date کار کنم سوالم اینه که وقتی توی محیط لوکال و زمپ هستیم تاریخ رو از سیستم خودمون میخونه؟؟

و سوال دومم اینکه وقتی رو سرور هستیم چطور از خود سرور میخونه یا میره از چه میدونم یه سایت دیگه یا یک api جهانی چیزی میخونه؟؟ ممنون میشم یکم درباره این موضوع و منطقش توضیح بدید

فایل پیوست

علی حبیبی
علی حبیبی

31 فروردین 99

3
حذف شده

سلام

بله روی سرور لوکال تاریخ خود سیستم محلی رو می خونه.

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

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

یه سری NTP Server وجود داره که تاریخ و زمان جهانی رو بهتون میده.

یه سرچ بکن کلید واژه زیر رو و بیشتر بخون:

Retrieve Time from NTP server via PHP

فایل پیوست

لقمان آوند

توسط

لقمان آوند

1 اردیبهشت 99

3
حذف شده

سلام.

اگر میخواهید منطقه ی زمانی تاثیری توی کارتون نداشته باشه، برای کار با زمان بهتر هست timestamp رو با استفاده از تابع time() در PHP تولید کنید و در فیلدی از نوع integer ذخیره کنید.

timestamp تعداد ثانیه گذشته از تاریخ ۱ ژانویه ۱۹۷۰ هست که یک عدد ثابت هست و منطقه زمانی تاثیری روی timestamp نداره. شما اگر نوع date رو ذخیره کنید نهایتا باید timestamp اون تاریخ و ساعت تولید بشه و توابع مثلا مربوط به تاریخ شمسی، اونو تبدیل به تایم شمسی کنن، خب پس بهتره واحدی رو انتخاب کنیم که وابسته به هیچ منطقه ی زمانی نباشه و در همه جا، متر ثابتی داشته باشیم.(مخصوصا ما که با تاریخ شمسی سروکار داریم.)

* همچنین ذخیره ی یک عدد صحیح توی دیتابیس پرفورمنس بالاتری داره و جستجو رو مخصوصا بین دو تایم که از between استفاده میشه با سرعت بالاتری انجام میده.

 

کار با timestamp هم راحته. برای مثال اگر برای تبدیل به شمسی از JDF استفاده میکنید:

echo jdate('H:i:s | Y/n/j', $timestamp);
// ۱۰:۲۶:۵۳ | ۱۳۸۹/۱۱/۲۲

 

* توجه: مقدار timestamp رو تا سال ۲۰۳۸ میتونیم داخل ۳۲ بیت یعنی نوع integer ذخیره کنیم.بعد از ۲۰۳۸-۰۱-۱۹ سرریز میکنه.

فایل پیوست

محسن موحد

توسط

محسن موحد

2 اردیبهشت 99