Vous n'avez pas besoin de substr ou de mysql pour cela. Obtenez d'abord vos dates sans substr :
$tawal = date('Y-m-d', strtotime($date));
$takhir = date('Y-m-d', strtotime($date1));
Vous avez maintenant les chaînes au format Y-m-d. Pour trouver le diff, bien que vous n'ayez pas à convertir en Y-m-d puisque nous n'avons pas besoin de mysql. Vous pouvez utiliser cette méthode pour trouver la différence en secondes.
$diff = abs(strtotime($date2) - strtotime($date));
$years = floor($diff / (365*60*60*24));
$months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));
$days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));