Contoh Fungsi PHP untuk Mengubah Waktu ke Kalimat

Fungsi PHP untuk mengubah waktu ke kalimat dibutuhkan pada aplikasi pembuatan produk hukum seperti akta notaris, surat kuasa, berita acara, surat penyertaan modal, dan lain sebagainya.

Fungsi yang akan dibagikan pada artikel ini menggunakan (dependent) pada fungsi terbilang() yang telah dibagikan pada artikel sebelumnya.

Contoh fungsi PHP untuk mengubah waktu dengan format H:i:s menjadi kalimat yang mudah dipahami manusia adalah sebagai berikut:

function waktu_ke_kalimat($waktu) {
  // Validasi input
  if (!preg_match('/^([01]\d|2[0-3]):([0-5]\d):([0-5]\d)$/', $waktu)) {
    return "Format waktu tidak valid!";
  }

  // Pecah waktu menjadi bagian jam, menit, dan detik
  list($jam, $menit, $detik) = explode(':', $waktu);

  // Konversi jam ke dalam format teks
  $jam_kalimat = terbilang($jam);

  // Konversi menit ke dalam format teks
  if ($menit == 0) {
    $menit_kalimat = "nol";
  } else {
    $menit_kalimat = terbilang($menit);
  }

  // Konversi detik ke dalam format teks
  if ($detik == 0) {
    $detik_kalimat = "nol";
  } else {
    $detik_kalimat = terbilang($detik);
  }

  // Gabungkan bagian-bagian waktu menjadi kalimat
  $kalimat = "pukul " . $jam_kalimat;
  if ($menit > 0) {
    $kalimat .= " lebih " . $menit_kalimat . " menit";
  }
  if ($detik > 0) {
    $kalimat .= " " . $detik_kalimat . " detik";
  }

  return $kalimat;
}

Contoh penggunaannya adalah sebagai berikut:

echo waktu_ke_kalimat('09:30:45'); 
// Output: "pukul sembilan lebih tiga puluh lima menit empat puluh lima detik"
echo waktu_ke_kalimat('23:00:00'); 
// Output: "pukul dua puluh tiga"
echo waktu_ke_kalimat('05:10:00'); 
// Output: "pukul lima lebih sepuluh menit"

Silahkan sesuai contoh fungsi php untuk mengubah waktu menjadi kalimat di atas sesuai kebutuhan masing-masing. Semoga bermanfaat.

Photo of author

Ahmad Budairi

Ahmad Budairi, S.Pd. | Seorang Web Developer sekaligus kader Gerakan Pemuda Ansor yang sangat suka menulis artikel. Saya di sini akan lebih banyak menulis seputar Laravel, vue, vuetify, inertiajs, dan hal lain yang berhubungan dengan web development.Kontak: budairi.contact[et]gmail[dot]com