تبدیل تاریخ شمسی به میلادی در php

پست محبوب

20 اردیبهشت 1398 ب.ظ 09:28:50
تبدیل تاریخ شمسی به میلادی در php

1398/2/20

تا به‌ حال به این موضوع فکر کرده ‌اید که اگر امکان استفاده از تاریخ در وب سایت ها وجود نداشت، چه اتفاقی می افتاد؟ تقریبا بدون ثبت و خواندن تاریخ در وب سایت ها، پیاده سازی هیچ کدام از خدماتی که در حال حاضر در سایت ها ارائه می شوند، کار ساده ای نخواهد بود. ثبت نام کاربران، گزارش های مالی، زمان پست های ارسالی و... نمونه ای از خدماتی است که با تاریخ در ارتباط اند. بنابراین کار با تاریخ یکی از رایج ترین مواردی است که در طراحی و برنامه نویسی سایت ها صورت می گیرد. کمتر سایت و یا اپلیکیشنی پیدا خواهید کرد که از تاریخ استفاده نکرده باشد.

روش های زیادی برای استفاده از تاریخ در PHP وجود دارد. برای کار با تاریخ توابع و کتبخانه های زیادی توسعه داده شده است که استفاده از آن ها با توجه به مستندات ارائه شده کار چندان سختی نخواهد بود. اما تاریخی که به صورت پیش فرض در این زبان استفاده می شود به صورت میلادی است. یکی از مشکلات برنامه نویسان و طراحان ایرانی، استفاده از تاریخ شمسی و قابلیت تبدیل آن به تاریخ میلادی در سایت ها است. در این مقاله، روش های مختلف تبدیل تاریخ شمسی به میلادی در PHP را به شما آموزش خواهیم داد. پس اگر قصد دارید از تاریخ شمسی در وب اپلیکیشن های خود استفاده کنید، از شما دعوت می کنیم تا در انتهای این مقاله همراه ما باشید.

تبدیل تاریخ شمسی به میلادی در PHP با استفاده از کتابخانه Verta
ورتا (Verta) پکیجی برای تبدیل تاریخ شمسی و میلادی به یکدیگر است که برای فریم ورک لاراول عرضه شده است. این پکیج توابع کمکی زیادی را شامل می شود که کاربران با بکارگیری آن ها می توانند به راحتی تبدیلات تاریخ را انجام دهند. زبان PHP دارای کلاسی برای تاریخ و زمان است که پکیج ورتا از همین کلاس ارث بری کرده است. ورتا از الگوریتم تبدیل تاریخ شمسی به میلادی و بالعکس استفاده می کند. الگوریتم مبدل تاریخی که در این پکیج استفاده شده است بر اساس الگوریتم تاریخ جلالی وحید سهراب لو، روزبه پورنادر و محمد توسی می باشد.

برای استفاده از این پکیج در وب اپلیکیشن های خود نیاز به نصب و استفاده از کامپوزر (Composer) دارید. کامپوزر یک ابزار کامند لاین است که به منظور کاهش وابستگی نرم افزارها به کتابخانه ها و پکیج های خارجی ارائه شده است. با استفاده از این ابزار به راحتی می توان پکیج ها و کتابخانه را دریافت و مدیریت کنید. منبع اصلی پکیج ها و کتبخانه های کامپوزر سایت Packagist است که به عنوان مخزن پیش‌فرض پروژه‌های PHP شناخته می شود. در این سایت توسعه دهندگان مختلف کتابخانه ها و پکیج های مختلف پروژه ‌های خود را در دسترس سایر توسعه دهندگان قرار می دهند.

آموزش نصب Composer
ابتدا باید ابزار کامپوزر را باید دانلود کنید. برای دانلود کامپوزر به سایت رسمی این برنامه به نشانی getcomposer.org مراجعه کنید. برای دانلود آخرین نسخه این برنامه مطابق عکس زیر بر روی Download کلیک کنید.

در صفحه بعد که هدایت می شوید، روش های مختلفی برای نصب کامپوزر وجود دارد. در این بخش ساده ترین روش نصب این ابزار بررسی می شود. در این صفحه برای دریافت فایل نصبی کامپوزر بر روی عبارت Composer-Setup.exe کلیک کنید.

پس از دریافت فایل اجرایی کامپوزر، آن را اجرا کنید و مراحل را مانند تصاویر دنبال کنید. در این مرحله از نصب باید نشانی فایل اجرایی php را برای نصب Composer مشخص نمایید. فایل اجرایی PHP معمولا توسط نرم افزارهایی مانند Xampp، Wamp و... نصب می شود. البته معمولا فایل نصبی به صورت اتوماتیک آدرس فایل اجرایی PHP را شناسایی می کند. اگر نرم‌ افزار نصب نتوانست به صورت خودکار این فایل را شناسایی کند، لازم است تا با زدن دکمه‌ Browse این مرحله را به صورت دستی پیش ببرید. پس انجام این کار بر روی گزینه Next کلیک کنید.

برای نصب این ابزار باید به اینترنت متصل باشید. پس این مرحله، دیگر نیازی به تغییرات و انجام عمل خاصی وجود ندارد و کافی است بر روی گزینه های Next و در نهایت Install کلیک کنید. تبریک می گویم، کامپوزر شما نصب شده است. اکنون می توانیم برای دریافت کتابخانه ورتا از این ابزار استفاده کنیم.

نصب کتابخانه Verta
برای نصب و بکارگیری کتابخانه ورتا در کامند لاین پروژه خود، دستور زیر را وارد کنید.

$ composer require hekmatinasser/verta

حال اگر بخواهید از این کتابخانه در پروژه لاراولی خود استفاده کنید، باید این پکیج را درون پروژه خود اضافه کنید. برای این کار دستور زیر را وارد کنید. البته در صورتی که قصد دارید از این پکیج در پروژه های غیر لاراولی استفاده کنید، می توانید این مرحله را نادیده بگیرید.

// config/app.php
'providers' => [
    ...
    HekmatinasserVertaVertaServiceProvider::class,

],

'alias' => [
    ...
    'Verta' => HekmatinasserVertaVerta::class,
]

نحوه استفاده از کتابخانه Verta

نحوه استفاده از این پکیج در نرم افزارها بسیار ساده است. کافی است در بالای هر فایلی از پروژه که نیاز به استفاده از کلاس ورتا دارید، از دستور زیر استفاده کنید. با این کار به راحتی می توانید از توابع پیش فرض این پکیج در کدهای خود استفاده کنید. پکیج ورتا توابع بسیار زیادی را به منظور کار با تاریخ برای توسعه دهندگان آماده کرده است. با استفاده از این توابع می توانید برای بدست آوردن تاریخ و زمان کنونی شمسی، نمایش تاریخ شمسی، نمایش تاریخ میلادی، تبدیل اعداد انگلیسی به فارسی و.... استفاده کنید.

use Verta;
// or
use HekmatinasserVertaVerta;


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

$v = new Verta('2016-12-27 14:12:32');
$v = Verta::instance('2016-12-25 11:12:36');
$v = FacadesVerta::instance('2016-12-25 11:12:36');

برای تبدیل تاریخ از میلادی به شمسی به صورت ساده، می توانید از دستور زیر استفاده کنید :
return Verta::getGregorian(1394,10,4);
 //جواب این دستور به صورت زیر است
 // [2015,12,25]


همچنین برای تبدیل تاریخ از شمسی به میلادی به صورت ساده، از دستور زیر استفاده کنید :
return Verta::getJalali(2015,12,25); 
 //جواب این دستور به صورت زیر است 
 // [1394,10,4]

همانطور که اشاره شد این پکیج کاربردهای بسیاری در نرم افزارهای ایرانی و فارسی زبان دارد. بنابراین اگر قصد دارید از سایر قابلیت های این پکیج استفاده کنید به شما پیشنهاد می کنیم که مستندات آن را مطالعه کنید.
به اشتراک بگذارید :
پاسخ دهید
شما باید وارد شوید برای ارسال نظر.