Postingan lainnya
Mengambil semua data dan mengubah format waktu sementara
Saya berencana untuk membandingkan nilai started_at dengan finished_at dengan nilai yg akan di input, jika waktu started_at dengan finished_at bentrok maka akan ada notifikasi, tman saya menyarankan agar mengubah format waktu yg sudah di simpan agar bisa dibandingkan. jadi pertanyaannya bagaimana cara saya mengambil semua data di started_at dengan finished_at di table ini dan mengubahnya sementara menjadi format contoh 14:00 menjadi 1400 tanpa harus di save ke dalam table?
berikut controller saya untuk booking waktunya
public function bookingappointment(Request $request, $name, $day)
{
$_SESSION['name'] = Auth::user()->name;
$_SESSION['role'] = AUth::user()->role;
$available = available::where('user_name', $name)->get();
$appeal = new appointment_appeal;
$appeal->request_from_id = $_SESSION['name'];
$appeal->request_to_id = $name;
$hari = date('Y-m-d', strtotime("next $day"));
$appeal->date = $hari;
$appeal->started_at = $request->time1;
$appeal->finished_at= $request->time2;
$appeal->tittle = $request->tittle;
$appeal->description = $request->description;
$appeal->action = "";
$appeal->save();
return view('searchedpage', ['available' => $available,
'namesearched' => $name,
'counter' => $hari,
'sessionname' => $_SESSION['name'],
'sessionrole' => $_SESSION['role']
]);
}
1 Jawaban:
Jawaban Terpilih
Bisa menggunakan sintak pemecah string/char.
<pre> explode() </pre>
Contohnya :
<pre> $date = "2019-12-25 15:31" $hasil1 = explode(":", $date);
echo $hasil1[0]; // ini hasilnya 2019-12-25 15
echo $hasil1[1]; // ini hasilnya 31
$hasil2 = explode(" ", $date);
echo $hasil2[0]; // ini hasilnya 2019-12-25
echo $hasil2[1]; // ini hasilnya 15:31
$hasil3 = explode(":", $hasil2[1]);
echo $hasil3[0].$hasil3[1]; // ini hasilnya 1531 </pre>
Dengan begitu kamu bisa menggunakan if untuk membandingkan nilai
tapi perlu diingat, hasil pemecah adalah char. tipenya bukan date time lagi.
Happy Coding ^^