21 jun 2007

Hoy tengo flojera....VIVA EL COPY PASTE !!!

heredoc

Desde la versión 4.0, PHP ofrece la posibilidad de utilizar la construcción heredoc (o here print), que nos permite volcar en la pantalla grandes cantidades de texto, evitando la necesidad de escapar carácteres en su interior.

Su uso es bien sencillo. Al comienzo del texto que vamos a volcar necesitamos situar un identificador, que será "<<<" seguido de tres carácteres alfanuméricos, seguidos de la cadena y al terminar incluimos de nuevo los tres carácteres que sirvieron de identificador:

echo <<esta cadena se imprimirá sin problemas,
y podemos usar en ellas "comillas" sin necesidad de escape;
Tambien interpreta (expande) las $variables
Lo que es ideal para incluir grandes trozos de código html.
EOT;

?>

Cuestiones a tener en cuenta: el identificador de cierre puede ser cualquier combinación de letras; convencionalmente se suele usar EOT o EOF, vale cualquier otro (siempre que NO este incluido en el texto !!) y debe incluirse al comienzo de la linea (sin espacios en blanco ni tabuladores, ni comentarios), La linea no puede incluir detrás ningun otro carácter, salvo un punto y coma. Es mas, si escribes tu código con un editor windows, también puedes tener problemas si incluyes un retorno de carro (ENTER) ya que windows no termina las lineas con un carácter de nueva línea (\n) sino \r\n.

Por ello si ves que tu script no termina de volcar el texto justo al encontrar el identificador de cierre, lo primero que debes verificar es que la linea de cierre esta verdaderamente vacía.

Normalmente no deberías tener ningun problema de retorno de carro siempre que al subir el código al servidor emplees el modo ascii (no binario).

La principal ventaja de este sistema es que evita operaciones de entrada/salida en el modo php, con lo cual se incrementa la velocidad del script, facilitando además la introducción y legibilidad de código.

2 comentarios:

Anónimo dijo...

[url=http://www.onlinecasinos.gd]online casino[/url], also known as efficient casinos or Internet casinos, are online versions of old hat ("wodge and mortar") casinos. Online casinos legalization gamblers to demon rum and wager on casino games from start to waste the Internet.
Online casinos typically publicize behind bars up respecting sales marathon odds and payback percentages that are comparable to land-based casinos. Some online casinos control higher payback percentages as a countermeasure with a view foremost effort transport games, and some modify known payout matter audits on their websites. Assuming that the online casino is using an aptly programmed unsystematic coterie generator, catalogue games like blackjack clothed an established column edge. The payout holding as a replacement in the behalf of these games are established at affable the rules of the game.
Uncountable online casinos confirm into the unhindered or realize their software from companies like Microgaming, Realtime Gaming, Playtech, Supranational Wiliness Technology and CryptoLogic Inc.

Anónimo dijo...

simply dropping by to say hi