سلام دوستان
تصمیم گرفتیم در مطالب php بخش جدیدی بنام php snippets یا قطعه کدهای php رو اضافه کنیم. در این بخش کدهای کاربردی و امتحان شده که توسط خود ما و یا سایر منابع نوشته شده اند را در اختیار کاربران عزیز قرار می دهیم که می توانند کارهای مختلفی رو انجام بدهند و ممکن است وقت زیادی از برنامه نویسان رو بگیرند .
در ادامه کدهایی رو به شما معرفی می کنیم که می تواند تعداد روزها و تعداد ساعت های بین دو تاریخ مختلف را حساب کند.
فرض کنید در پروژه خود سرویس هایی را برای تعداد روز مشخص به کاربران ارائه می کنید. با این کد می تواند تعداد روزهای باقی مانده از سرویس را محاسبه کنید و در صورت نیاز پیش از اتمام سرویس به کاربر اطلاع دهید
دو کد در این بحث برای شما قرار دادیم که اولی فقط تعداد روزها و دومی هم تعداد روزها و هم ساعت ها را محاسبه می کند
کد محاسبه تعداد روزها
/** * Finds the difference in days between two calendar dates. * * @param Date $startDate * @param Date $endDate * @return Int */ function dateDiff($startDate, $endDate) { // Parse dates for conversion $startArry = date_parse($startDate); $endArry = date_parse($endDate); // Convert dates to Julian Days $start_date = gregoriantojd($startArry["month"], $startArry["day"], $startArry["year"]); $end_date = gregoriantojd($endArry["month"], $endArry["day"], $endArry["year"]); // Return difference return round(($end_date - $start_date), 0); } echo 'Difference is '.dateDiff("2012-10-12","2012-11-14").' days ! \n';
کد بالا شامل یک تابع است که باید تاریخ شروع رو به عنوان آرگومان اول و تاریخ پایان رو به عنوان آرگومان دوم بهش پاس بدید تا تعداد روزها رو برگشت بده .یعنی همون کاری که ما در خط آخر کد فوق کردیم
کد محاسبه تعداد روزها + تعداد ساعت ها
$day = 31; // Day of the countdown $month = 12; // Month of the countdown $year = 2012; // Year of the countdown $hour = 23; // Hour of the day (east coast time) $event = "New Year's Eve, 2012"; //event $calculation = ((mktime ($hour,0,0,$month,$day,$year) - time())/3600); $hours = (int)$calculation; $days = (int)($hours/24); /* mktime() http://www.php.net/manual/en/function.mktime.php time() http://www.php.net/manual/en/function.time.php (int) http://www.php.net/manual/en/language.types.integer.php */ ?> <ul> <li>The date is <?=(date ("l, jS \of F Y g:i:s A"));?>.</li> <li>It is <?=$days?> days until <?=$event?>.</li> <li>It is <?=$hours?> hours until <?=$event?>.</li> </ul>
این کد تعداد روزها و ساعت های باقی مانده تا اتمام سال 2012 میلادی را محاسبه می کند.در سه متغیر ابتدایی این کد می توانید روز ،ماه و سال مورد نظرتون رو تعیین کنید . فرق دیگر این کد با کد اول این است که لازم نیست تاریخ شروع رو به این کد پاس بدید و تاریخ شروع را همان تاریخ فعلی در نظر می گیرد
باسلام.
کد دوم شما, چطوری میشه تعداد دقیقه هم محاسبه کرد؟
خیلی جالب بود اگه پیشنهاد نمی دادین نمی خوندیم این مطلبو
سلام
آدرس صفحه ای در سایت مرجع php مثال برای توابع مختلف داشت رو میشه بدید؟