September 2009
Intermediate to advanced
912 pages
48h 11m
German
Sie möchten gefundenen Text mit einer PHP-Funktion verarbeiten. Sie wollen zum Beispiel alle HTML-Entities in eingefangenen Teilmustern dekodieren.
Nutzen Sie preg_replace_callback( ). Geben Sie anstelle eines Ersetzungsmusters eine Callback-Funktion an. Dieser Callback-Funktion wird ein Array mit allen gefundenen Teilmustern übergeben, und sie sollte einen geeigneten Ersetzungsstring zurückliefern. Listing 16.3 dekodiert die Entities zwischen <code></code>-Tags.
<?php $html = 'Das <b>-Tag macht Text fett: <code><b>fett</b></code>'; print preg_replace_callback('@<code>(.*?)</code>@','decode', $html); // $matches[0] ist der gesamte gefundene String. // $matches[1] ...