Mira, explode lo que hace es "cortar" un string, usando otro string como separador. La sintaxis es asi:
Código PHP:
$nuevo_array = explode($separador, $string_original);
De que forma "corta" al string original? simple, supongamos que el string es "uno,dos,tres", al aplicar, por ejemplo:
Código PHP:
$algo = explode(",","uno,dos,tres");
Esto devolverá un array compuesto por tres elemenots, en el indice 0 devuelve "uno", en el 1 devuelve "dos", y en el 2 devuelve "3".
Sobre el asunto de separar el hrml del php, tendrias que usar una expresión regular que busque todo lo que se encuentra entre "<?" y "?>", formar un string con eso, y resaltarlo con highlight_string.
saludos,
chubu