Se pueden, y están pensados para combinarse, ya que cada cosa se ocupa de cosas distintas. Ninguna sustituye a la otra.
PHP y JavaScript son cosas completamente distintas a HTML y CSS.
PHP y JavaSCript son lenguajes de programación (HTML y CSS no).
JavaScript sirve para dar funcionalides a la página web, en modo local. Es decir, el programa se ejecuta en el ordenador de la persona que accede a la página.
Ofrece un montón de funcionalidades, las más comunes es dar funcionalidad a botones de formularios pero las posibilidades pueden ir muchísimo más allá, incluso
programar videojuegos.PHP en cambio, no se ejecuta en el ordenador del usuario que entra en la web, se ejecuta en el servidor que alberga dicha página web. También ofrece muchísimas posibildades, la más habitual y "básica" es usarlo para comunicarse con bases de datos.
Mira, para ver mejor las diferencias. Ahora mismo, mientras escribo este mensaje en el area de texto, tengo debajo dos botones, uno llamado
Publicar que será el que utilizaré para publicar este mensaje aquí en el foro.
Para este botón se necesita combinar TODAS las "ciencias" que hemos mencionado.
HTML se encarga de indicar a la página que quiere crear un botón con un determiando texto, usando la etiqueta HTML:
<input type="submit" value="Publicar" onclick="nombreDeFuncionJavaSCript()"/>CSS se encarga de indicar a la página, donde colocarlo y que aspecto tendrá: tamaño, color, como alterar su aspecto cuando el mouse pasa por encima...
JavaSCript se encarga de indicar a la página que va a ocurrir cuando hagamos click en este botón. Para ello, en el atributo onclick de la etiqueta HTML <input/>, se pone el nombre de la función (programita JavaScript escrito por separado) que queremos ejecutar al pulsar el botón.
Esta función lo que hará es coger el texto escrito por el usuario y enviarlo donde el programador haya decidido.
PHP, en algún momento, recibirá este texto y lo que hará será construir una query (consulta
MySQL) para enviar dicho texto a la base de datos que guarda todos los mensajes del foro.
Una vez enviado,
PHP volverá a utilizar otras
query para recuperar el mensaje que se ha guardado en la base de datos y mostrarlo en la web para que todo el mundo pueda verlo
Como ves, todos trabajan en equipo, ninguna "ciencia" sustituye a la otra. Todas tienen unas funciones concretas y es al trabajar en equipo, cuando se crea una sinergia que hace que las páginas web posean funcionalidades increibles, a pesar de que en su momento, hace ya algunas decadas, fueron concebidas para mostrar texto y poco más...