Come si è detto, PHP è un vero e proprio linguaggio di programmazione, anche piuttosto evoluto. Referenziando l'indirizzo http://host/cgi-bin/php/test.html, il file test.html viene letto dall'interprete PHP6, e le istruzioni presenti sono eseguite, ivi comprese quelle di stampa che servono a produrre i contenuti della pagina html che è restituita ad Apache e da questi al client remoto. Nello stesso file possono inoltre essere presenti tag HTML, che sono invece passati inalterati; per distinguere le linee di codice dai tag HTML che devono essere restituiti inalterati, i blocchi di codice PHP sono circondati da delimitatori del tipo <? ?>.
Un file sorgente PHP è quindi caratterizzato dall'essere leggibile su due livelli: il primo è quello di una normale pagina HTML, nel cui contesto viene annidato il codice PHP, che può dunque essere letto letteralmente ``tra le righe'', ed il risultato della cui esecuzione dà luogo alle componenti dinamiche della pagina.