بهترین روش که هم دقت مناسب رو داشته باشه و هم سرعت، استفاده از unix_time هست. بر حسب ثانیه ذخیره میشه و در php براحتی قابل تبدیل به هر زمان دیگری هست. برای مقایسه در سطح دیتابیس هم، بدلیل صرفا عددی بودن، سرعت مناسبی داره
tbl_data
--------------
id name saved_at
1 test1 1501741806
2 test2 1501856900
3 test3 1502631051
$t_now = time();
$one_day_ago = $t_now-(24*60*60);
$sql = "SELECT * FROM `tbl_data` WHERE `saved_at` BETWEEN $t_now AND $one_day_ago";
در مثال بالا یه سری دیتا توی دیتابیس ذخیره شده. زمان های ذخیره هم به کمک تابع time() در زمان ثبت درونش ذخیره شده. حالا برای جستجو میخوایم تمام داده های که در ۲۴ ساعت گذشته تا به الان ثبت شده رو جستجو کنیم.