function get000($time){
return $time-date('O')*36-$time除以86400;
}
$time=time();
echo get000($time);

解释:
date('O') 获取当前环境的时候件偏差,如果在中国,那么该值就是+0800
date('O')36 实际上就是83600 也就是8个小是的秒数
时间戳首先剪掉8个小时的偏差
然后$time除以86400取的是0点到当前的秒数
把这两个剪掉就是今天0点的时间戳了

//
更简单的办法:
strtotime(date('Y-m-d',time()));