Hola
Eso es simple, puedes hacerlo con JavaScript o con PHP como lo mencionas... con PHP podria ser que tengas en una bdd alamacendados los datos de cada uno de los banners de publicidad, noticias, etc y lo unico que tienes que hacer es una consulta aleatoria de tu servidor de BDD, te explico con MySQL.
<?php
include("conectar_bdd.php"); //suponemos que la conexion a la bdd la tienes alli
$consulta = "SELECT * FROM publicidad ORDER BY RAND()";
// ya simplemente trabajas con los campos de tu tabla publicidad :-)
?>
Saluos!