No creo que se pueda comparar ASP con PHP en ese sentido.
Creo que mas bien se trata de estilos de programación.
Existen formas mucho mas simples para mostrar la fecha en español, pero particularmente esta implementación es para emular el resultado que se obtiene con la funcion date() nativa de PHP, por eso es mas largo.