Antworten auf deine Fragen:
Neues Thema erstellen

clean string

fakerer

Aktives Mitglied

Hallo,

ich bekomme einen string den ich gerne von allen html und nicht utf8 Zeichen befreien würde.
allerdings gestaltet sich das etwas schwieriger als ich dachte, und mir gehen die Ideen aus.

Hier ein screen der Ausgabe (Browser und Konsole).


meine bisheriger ansatz
PHP:
$clean = function ($string) {
            var_dump($string);
            $string = preg_replace('/[^\\x19-\\xFFFF]/', '', $string);
            var_dump($string);
            $string = html_entity_decode($string);
            var_dump($string);
            $string = str_replace(" ", ' ', $string);
            var_dump($string);
            $string = strip_tags($string);
            var_dump($string);
            echo '<hr>';
            return $string;
        };

leider wird anscheinen alles ignoriert, und das obwohl die var_dump immer sagt das es sich um strings handelt.

Danke
 

fakerer

Aktives Mitglied

das mit der Funktion passt schon es kommt ja auch was raus, das ist eine "closures function", das Problem ist das strip_tags zb nichts macht und die <font> tags drinn lässt oder auch die &nbsp nicht verschwinden aus dem string.
 

owieortho

Aktives Mitglied

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
<head>
    <title>Clean HTML</title>
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
</head>

<body>
<h1>Clean HTML</h1>
<?php
function clean($string) {
            var_dump($string);
            $string = preg_replace('/[^\\x19-\\xFFFF]/', '', $string);
            var_dump($string);
            $string = html_entity_decode($string);
            var_dump($string);
            $string = str_replace("&nbsp;", ' ', $string);
            var_dump($string);
            $string = strip_tags($string);
            var_dump($string);
            echo '<hr>';
};
$string = "<p><font face=\"Arial\">Dies ist ein <strong>&Auml;bsatz</strong> mit&nbsp;einem<br /><em>Zeilen&uuml;mbruch</em>.</font></p>";
echo $string . "<br /><hr />";

clean($string);
?>
</body>
</html>
Mit dieser Datei werden non-breaking spaces entfernt, tags ebenfalls und entities werden decodiert, also eigentlich alles so, wie Du es wünscht. PN mit Link kommt parallel.
Ich tippe erst mal auf Schreibfehler in der Originaldatei...
O.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.619
Beiträge
1.538.363
Mitglieder
67.540
Neuestes Mitglied
Alex Weidner
Oben