No existe una estructura así como ideal, pero si existe algo así como un estandar y no solamente en php sino también en algunos otros lenguajes. Por ejemplo muchos ponen los archivos que seran servidos en una carpeta publica dentro de la carpeta del dominio y solo dirigen el trafico a la misma. Una vez estando dentro de la carpeta, el primer archivo sera el index, acompañado de la carpeta de imagenes, la de css, la de js y los recursos de tu lenguaje en el backend, la cual puede ser un par de capetas dentro de recursos, phpincludes y phpparsers son las que yo ocupo en especial. Hay quienes deciden poner los script de front-end y las imagenes en una carpeta llamada assets. Pero depende de tu escuela o de como te haya enseñado los tutoriales.