• 0

أريد تحويل الثواني إلى فورمات الساعة

اريد تحويل الثواني الي فورمات الساعة في PHP مثل لدي رقم اقوم بجلبه عن طريق timestamp و اريد تحويله هكذا

00:00:00

يعني ثواني و ساعات و دقايق

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0

ربما تقصد أنه لديك وقت ما يكون بصيغة timestamp بهذا الشكل 

86400

لاحظ ان الرقم السابق هو عدد الثواني في 24 ساعة ,فيمكنك برمجة دالة تقوم بهذا الأمر , لأن الدالة ستسمح لك باستخدامها في أي مكان في مشروعك فنقوم بإنشاء دالة وليكن اسمها secondsToString بهذا الشكل 

function secondsToString( $seconds ){

}

لاحظ أننا مررنا لها رقم الثواني , الأن يمكننا الاستفادة من رقم الثواني هذا في تحويله إلى  ثواني و دقائق و ساعات , نقوم باستخدام دالة intval لنحصل على القيمة الصحيحة للرقم 

$seconds = intval( $seconds );

ثم نقوم باستخراج الساعة عن طريق تمرير عدد الثواني مقسوم على 3600 و هو عدد الثواني في الساعة الواحدة 

$h = floor( $seconds / 3600 );

ثم نقوم باستخراج عدد الدقائق من خلال جلب باقي قسمة الثواني على 3600 ثم قسمة الرقم الناتج على 60

$m = floor( $seconds % 3600 / 60 );

ثم عدد الثواني من خلال جلب باقي قسمة الثواني على 60 

$s = floor( $seconds % 60 );

ثم نقوم بإرجاع القيم هذه من خلال دالة return  و نضع بين المتغيرات النص ":" بهذه الطريقة 

return $h.":".( $m < 10 ? "0" : "" ).$m.":".( $s < 10 ? "0" : "" ).$s;

فسيكون الناتج بهذا الشكل 

23:59:59

فتكون كامل الدالة 

function secondsToString( $seconds ){

  $seconds = intval( $seconds );

  $h = floor( $seconds / 3600 );

  $m = floor( $seconds % 3600 / 60 );

  $s = floor( $seconds % 60 );

  return $h.":".( $m < 10 ? "0" : "" ).$m.":".( $s < 10 ? "0" : "" ).$s;

}

 

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن