Lo que hace es asocias comillas simples y comillas dobles.
Si tu por ejemplo metes un contenido que vaya a llevar muchas comillas dobles como por ejemplo
Código HTML:
<table width="200" height="100" border="0" cellpadding="0" cellspacing="0">
Deberías de ponerlo abriéndolo con comillas simples
Código PHP:
texto = '<table width="200" height="100" border="0" cellpadding="0" cellspacing="0">';
Ya que para el eso es una frase, si en el caso de tener esto, cambiaremos por ejemplo dentro unas comillas dobles por unas simples, fíjate en el cell padding.
Código PHP:
<table width="200" height="100" border="0" cellpadding='0' cellspacing="0">
El está interpretando que la frase acaba en
<table width="200" height="100" border="0" cellpadding= y que lo que hay acoontinuacion puede ser una variable, para ese caso tendríamos que hacerlo de la siguiente manera.
Código PHP:
texto ='<table width="200" height="100" border="0" cellpadding='+0+' cellspacing="0">';
Para que lo cogiera bien, en este caso el 0 lo toma como variable o valor, por lo que hay que añadir los + para que continue poniendo el resto de la "frase".
He llamado frase a la linea esa para que te hagas una idea de como hace los cortes.