Fijate si te sirve:
Código PHP:
<script>
function cant_ds(mes,ano){
di=28
f = new Date(ano,mes-1,di);
while(f.getMonth()==mes-1){
di++;
f = new Date(ano,mes-1,di);
}
return di-1;
}
//tests
alert(cant_ds(2,2007))
alert(cant_ds(11,2007))
alert(cant_ds(2,2000))
</script>