25 خرداد 1398 ساعت 07:22

بدست آوردن اختلاف بین دو زمان با استفاده از کلاس Carbon در لاراول و php

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

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

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

Carbon یک کلاس برای کار با زمان می باشد که از کلاس DateTime در php ارثبری می کند.

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

فریم وورک محبوب لاراول هم که از کلاس ها و پکیج های متفاوتی استفاده می کنه از این کلاس برای کار با زمان استفاده کرده تا به توسعه دهنده گان لذت استفاده از این کلاس مفید رو داده باشه.

در این مطلب قصد داریم با استفاده از کلاس carbon اختلاف بین دو زمان را بدست آوریم.

فرض کنید دو زمان بصورت زیر داریم که می خواهیم تفاوت بین آنها را بر حسب ثانیه- دقیقه و ساعت بدست آوریم.

زمان شروع را بصورت زیر تعریف میکنیم:

 $start = Carbon::parse($this->date_begin);

زمان پایان نیز بصورت زیر:

$end = Carbon::parse($this->date_end);

 

حال به راحتی و به روش های زیر می توانیم اختلاف بین دو زمان را بر حسب ثانیه- دقیقه- ساعت و حتی روز و میلی ثانیه و... بدست آوریم:

اختلاف بر حسب روز:

 $hours = $end->diffInDays($start);

اختلاف بر حسب ساعت:

 $hours = $end->diffInHours($start);

اختلاف بر حسب دقیقه:

 $hours = $end->diffInMinutes($start);

اختلاف بر حسب ثانیه:

   $seconds = $end->diffInSeconds($start);

 

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

 

اگر شما هم راه حلی برای بدست آوردن اختلاف می دونید حتما از بخش نظرات برای ما و دوستان بفرستید.

 

888 admin
نظرات

برای اطلاع از پاسخ به نظر شما می توانید ایمیل یا شماره موبایل خود را وارد نمایید. *

ایمیل و شماره موبایل شما کاملا مخفی خواهد ماند و در سایت نمایش داده نخواهد شد. *

پاسخ به نظر
اگر نظری برای این مطلب ارسال شد از طریق ایمیل مرا اطلاع بده!

fatyma
سلام میشه کمکم کنین؟ من دارم ازمون انلاین می نویسم و تاریخ و ساعت شروع و پایان رو از ادمین می گیرم و بعد باید بگم راش این ساعت شروع شو و راس همون ساعت تموم. تاریخ رو مشکلی ندارم با پکیج ورتا می تون درستش کنم اما نکته درباره ساعته که من دارم به ساعت ایران می گیرم درر حالیکه Carbon::now ساعت رو به زمان ایران نمیده حالاچطوری تایمم رو تبدیل کنم تا با تایم کربن بتونم مقایسه کنم؟

پاسخ به این نظر

پاسخ
ایمان برومند زاده
با سلام چرا شما به راحتی میتونید موقعیت زمانی اپلیکیشنتون رو بزارید روی تهران و استفاده کنید

پاسخ به این نظر

0