نشانی کانال ما: https://splus.ir/jdf.scr.ir
اسفند 1399
کتابخانهی jdf.php بهروزرسانی شد و مشکل موجود در تابع jcheckdate که باعث خطا برای روز ۳۰ اسفند شدهبود، برطرف گردید. لطفاً نسبت به جایگزینی نسخهی جدید، اقدام فرمایید.
آبان 1399
توابع تبدیل تاریخ مخصوص زبان بَش لینوکس، (Bash) به مجموعه اضافه گردید.
شهریور 1399
توابع تبدیل تاریخ مخصوص زبان دارت، (Dart) افزوده شد.
خرداد 1399
همهی توابع برای همهی زبانها بازنویسی گردید و بهینگی و دقّت آنها افزایش یافت. حتماً بهروزرسانی نمایید.
زبانهای Go, Objective_C, Swift, R نیز به مجموعه اضافه شد.
فروردین 1399
تابع تبدیل تاریخ زبان پایتون، اصلاح شد. لطفاً جایگزین نسخهی قبلی نمایید.
نسخهی اولیهی نرمافزار دفتر سررسید سالنامه + تقویم «شمس» منتشر گردید. (فعلاً نسخهی اندروید)
بهار 1398
توابع تبدیل تاریخ مخصوص زبان کاتلین، افزوده شد.
توابع مربوط به زبان جاوا اسکریپت، اصلاح گردید.
انتشار توابع تبدیل تاریخ به زبان های مختلف برنامه نویسی
خداوند را شاکریم که فرصت عطا فرمود تابتوانیم برای برخی زبان های برنامه نویسی پرکاربرد ، توابع تبدیل تاریخ هجری شمسی را ارائه دهیم.
هشدار در مورد تغییرات آینده
قرار است در نسخه های بعدی ، تغییراتی اعمال شود که تنظیمات منطقه ی زمانی (TimeZone) فقط درون خود توابع اعمال گردد و خارج از آن ، به حالت قبل بازگردد. لذا اگر در یک فایل از توابع میلادی (غیر هـ شمسی) استفاده شده باشد ، با قرار دادن کد زیر در ابتدای آن فایل ، منطقه ی زمانی را به وقت کشورمان تنظیم نمایید:
date_default_timezone_set('Asia/Tehran');
امّا در مورد توابع هجری شمسی که در فایل jdf.php تعریف شده اند و معمولا نام آن ها با حرف j شروع می شود (مثل jdate,jmktime,...) لازم نیست حتماً چنین کاری انجام شود.
یک اشتباه رایج
اخیراً با شرایط به وجود آمده برای هفته ی بین سال 95 و 96 ، برخی کاربران که اشتباهاً از کاراکتر o کوچک برای نمایش سال استفاده نموده بودند ، دچار مشکل گردیدند. به این منظور باید از کاراکتر Y بزرگ استفاده شود. با مطالعه ی جداول و توضیحات مربوطه ، تفاوت بین این دو کاراکتر را بهتر متوجّه خواهید شد.
نسخه ی 2.70 نرم افزار
تغییرات:
- طبق اعلام قبلی ، امکان استفاده از عبارت now در آرگومان دوم jdate که از نسخه ی 1 قدیمی وجود داشت ، حذف گردید. مقدار پیشفرض آن برچسب زمان فعلی می باشد که در صورت وارد نکردن و یا قرار دادن '' (رشته ی خالی) اعمال می گردد.
- بهینه تر شدن توابع تبدیل تاریخ و افزایش سرعت
- رفع برخی خطاهای گزارش شده
آیا می دانید حمایت مالی داوطلبانه از برنامه نویسان باعث افزایش انگیزه ی آنان جهت توسعه ی نرم افزارهای رایگان می گردد؟ حمایت مالی
بنا به گزارش های شما ، بیشترین اشتباه و مشکلات ناشی از آن به خاطر عدم تنظیم منطقه ی زمانی قبل از استفاده از تابع jmktime بود که اخیراً درون آن اضافه گردیده و مقدار پیشفرض آن به وقت جمهوری اسلامی ایران قرار داده شد. البتّه اگر مقدار آن را 'local' وارد نمایید ، مثل نسخه های قدیم ، اعمال نخواهد شد.
امّا تابع ()mktime میلادی چنین پارامتری ندارد و قبل از به کارگیری توابع اصلی میلادی مثل date ، getdate ، mktime و... حتماً باید منقطه ی زمانی را تنظیم کنید تا به مشکل بر نخورید:
date_default_timezone_set('Asia/Tehran');
منسوخ شده ها: برای گرفتن برچسب زمان همین الآن از تابع jmktime یا mktime به صورت بدون پارامتر استفاده نکنید. باید از تابع ()time استفاده نمایید. همچنین در آرگومان (پارامتر) دوم تابع jdate از مقدار 'now' استفاده نشود. می توانید آن را وارد نکرده یا خالی "" بگذارید. موارد ذکر شده ممکن است در نسخه های بعدی دچار تغییر یا حذف شوند.
همچنین اشتباه دیگر اکثر کاربران ، استفاده از اعداد فارسی در محاسبات ریاضی بود که حتماً باید خروجی تابع ()jdate را با قرار دادن پارامتر پنجم آن به صورت 'en' ، انگلیسی کنید تا اعداد خروجی را بتوان با مثلاً جمع یا ضرب نمود:
$next_year=jdate('Y','','','','en')+1;// سال بعد
تابع ()tr_num نیز می تواند تبدیل را انجام دهد:
$next_year=tr_num(jdate('Y'))+1;// سال بعد
در صورت مشاهده ی هرگونه اشکال یا مغایرت با کارکرد توابع اصلی (میلادی) حتماً به ما اطّلاع دهید: http://jdf.scr.ir/n/
حمایت مالی
با توجّه به فراهم شدن امکان ایجاد بازو (ربات) در پیام رسان قدرتمند سروش، قصد داریم کانال هایی که در سروش به آموزش ساخت بازو می پردازند را معرّفی کنیم. یکی از اوّلین کانال ها در این زمینه، کانال baazoo می باشد: https://splus.ir/baazoo
ضمن تشکّر از دوستانی که با نظرها و پیشنهادهای خود ، ما را راهنمایی نمودند ، از شما دعوت می کنیم با عضویت در خبرنامه ی سایت ، از انتشار نسخه ی جدید ، مطّلع گردید: http://jdf.scr.ir/newsletter
با تشکّر ، معاون سایت
نشانی کوتاه این صفحه: