13.11 ASCII in HTML konvertieren

Problem

Sie möchten einfachen Text in brauchbar formatierten HTML-Code verwandeln.

Lösung

Codieren Sie zuerst die HTML-Entities mit htmlentities( ); transformieren Sie dann den Text in verschiedene HTML-Strukturen. Die in Listing 13.11 dargestellte Funktion pc_ascii2html( ) führt einige grundlegende Transformationen für Links und Absätze durch.

function pc_ascii2html($s) { $s = htmlentities($s); $grafs = split("\n\n",$s); for ($i = 0, $j = count($grafs); $i < $j; $i++) { // Links für alles herstellen, was wie eine HTTP- oder FTP-URL aussieht. $grafs[$i] = preg_replace('/((ht|f)tp:\/\/[^\s&]+)/', '<a href="$1">$1</a>',$grafs[$i]); // Links für E-Mail-Adressen. $grafs[$i] = preg_replace('/[^@\s]+@([-a-z0-9]+\.)+[a-z]{2,}/i', ...

Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.