Fonksiyon işinizi görecektir tarih ayrımında / değilde . kullanın zira sizin kodlarda explode işlemini . göre yapıyor
function hesapla($alistarihi,$donustarihi,$alissaati="0",$donussaati="0"){
if((!empty($donustarihi)) or (!empty($alistarihi))){
$zaman1 = new DateTime($alistarihi);
$zaman2 = new DateTime($donustarihi);
$gun = $zaman1->diff($zaman2);
if ($zaman2 > $zaman1){
$saathesapla = $donussaati-$alissaati;
if(($saathesapla <= "0")){
$sonuc = $gun->format('%a');
}else {
$sonuc = ($gun->format('%a'))+1;
}
}else{
$sonuc = 1;
}
return floor($sonuc);
}
}
// kullanımı
echo hesapla('10.04.2015','10.05.2015');