PDA

View Full Version : سوال: سوال در رابطه با فایل jdf.php



reza_edu
دوشنبه 13 آذر 1391, 12:01 عصر
سلام به دوستان خوب من برای تبدیل تاریخ از فایل jdf.php استفاده میکنم همون طور که اطلاع دارید برای استفاده از
این مبدل باید ساعت را نیز وارد کرد که من چون به آن نیاز ندارم مقادیر مربوط به زمان رو صفر وارد میکنم . حالا سوال من اینجاست که وارد کردن مقدار صفر ممکن هست در طول زمان برای من مشکلی ایجاد کنه؟

کد من :

$timestamp = mktime(0, 0, 0, 3, 25, 2012);
$jalali_date = jdate("Y/m/d",$timestamp);

tehro0n
دوشنبه 13 آذر 1391, 12:37 عصر
این 0 ها در واقع ساعت را روی 12 نیمه شب تنظیم می کنه و اگه سرورتون اختلاف زمان با ساعت به وقت ایران داشته باشه ممکنه دیروز را محاسبه کنه، در غیر این صورت مشکلی پیش نمیاد

$ M 3 H R D A D $
دوشنبه 13 آذر 1391, 12:37 عصر
نه صفر یعنی اولین زمان 00:00 اون روز خاص هر عددی هم بجاش باشه برا شما فرقی داره جون شما تاریخ و میخوای نه ساعت

$ M 3 H R D A D $
دوشنبه 13 آذر 1391, 12:38 عصر
تایم زون ست کن

reza_edu
دوشنبه 13 آذر 1391, 13:03 عصر
ممنون از توجه شما



این 0 ها در واقع ساعت را روی 12 نیمه شب تنظیم می کنه و اگه سرورتون اختلاف زمان با ساعت به وقت ایران داشته باشه ممکنه دیروز را محاسبه کنه، در غیر این صورت مشکلی پیش نمیاد


مگه من تاریخ حالارو میخوام که قاطی کنه من یه تاریخ رو فقط تو دیتابیس ذخیره میکنم و بهش میدم . بازم به تایم سرور ممکنه ربط داشته باشه ؟



تایم زون ست کن


برای چی اینکار رو کنم؟

vahid.1
دوشنبه 13 آذر 1391, 13:07 عصر
سلام
دوستان من در دیتابیس تاریخ به این صورت 03-12-2012 ثبت میشه چطوری میتونم اونو به امروز دوشنبه 13 آذر 1391 نمایش بدم. ممنون میشم کمکم کنید.

$ M 3 H R D A D $
دوشنبه 13 آذر 1391, 13:10 عصر
خوب تایم زون و رو آسیا ببر به وقت ما جساب کنه برای اون جرف دوستمونم مشکلی نیست چون شما تبدیل تاریخ میکنید نه دریافت تاریخ جدید

vahid.1
دوشنبه 13 آذر 1391, 13:19 عصر
من میخوام به صورت دوشنبه 13 آذر 1391 نمایش بده از چی باید استفاده کنم

reza_edu
دوشنبه 13 آذر 1391, 13:32 عصر
ممنون . اما دوست گرامی vahid.1 از cms استفاده میکنی یا خودت نوشتی ؟ اگه خودت نوشتی برو تو آدرس زیر :
http://jdf.scr.ir/

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

list($month, $day, $year) = explode('-', date('Y-m-d'));

$timestamp = mktime(0, 0, 0, $month, $day, $year);

$jalali_date = jdate("Y/m/d",$timestamp);

echo($jalali_date);


کد با لا برای یه قسمت از برنامم بود برای شما باید قسمت "Y/m/d" رو تو تابع jdate تغییر بدی درست میشه .

MMSHFE
دوشنبه 13 آذر 1391, 20:00 عصر
یه سؤال دارم: چرا از jmktime استفاده نمیکنید؟ دیگه مشکل اختلاف زمانی رو هم نخواهید داشت!

tehro0n
دوشنبه 13 آذر 1391, 23:59 عصر
در صورتی که از فایل jdf استفاده می کنید می تونید از این تابع استفاده کنید

jmktime( $hour , $minute , $second , $month , $day , $year , $is_dst );

hour$ : پارامتر اوّل ، ساعت ( 24 ساعته ، 23 - 0)
minute$ : پارامتر دوم ، دقیقه ( 59 - 0)
second$ : پارامتر سوم ، ثانیه ( 59 - 0)
month$ : پارامتر چهارم ، ماه ( 12 - 1)
day$ : پارامتر پنجم ، روز ( 31 - 1)
year$ : پارامتر ششم ، سال ( کامل 4 رقمی )
is_dst$ : پارامتر هفتم ، یک پارامتر اختیاری است و مقدار پیشفرض آن '-1' است. ( پیشنهاد من این است که این پارامتر را اصلاً وارد نکنید. )

این نمونه توضیحات سایت سازنده است
اگر هم زمانی از اسکریپت خواستید استفاده کنید می تونید به این لینک مراجعه کنید، البته mktime نداره اما اسکریپت تاریخ شمسی است
http://www.toolsir.com/jalali