no es necesaria, a menos que te plantees un modelo MVC bien estructurado, pero puedes hacerlo con o sin POO.
 
puedes, por ejemplo hacerlo de forma estructurada pero utilizando a la vez un ORM POO o similar para bases de datos, como 
doctrine, en fin, puedes hacerlo como prefieras 
