3v4l.org

run code in 300+ PHP versions simultaneously
<?php $str = "Venez découvrir Rose Palace dans le Parc du Domaine de Vizille. L'artiste-plasticienne Viviane Rabaud noue, assemble, recompose à travers des gestes simples et répétitifs. Elle joue avec les matières, dialogue avec le lieu à travers son axe de travail : le tissage... Avec la métamorphose Rose Palace, elle interroge l'histoire et s'approprie le symbole de la Bastille."; $str = htmlspecialchars($str, ENT_QUOTES, 'UTF-8'); $str = str_replace("\n", '<br>', $str); $array = array('m' => array('TITLE' => 'mètre(s)','LANG' => 'fr', 'TAGNAME' => 'abbr')); echo '<pre>' ; foreach ($array as $key => $value) { switch ($key) { case '%' : $str = preg_replace('/(?!(<[^>]+))(%)(?!([^<]*>))/ums', '$1<' . $value['TAGNAME'] . ' lang="' . $value['LANG'] . '" title="' . htmlspecialchars($value['TITLE'], ENT_QUOTES, 'UTF-8') . '">$2</' . $value['TAGNAME'] . '>$3', $str); break; case '@' : $str = preg_replace('/(?!(<[^>]+))(@)(?!([^<]*>))/ums', '$1<' . $value['TAGNAME'] . ' lang="' . $value['LANG'] . '" title="' . htmlspecialchars($value['TITLE'], ENT_QUOTES, 'UTF-8') . '">$2</' . $value['TAGNAME'] . '>$3', $str); break; default : $str = preg_replace('/(?!(<[^>]+))(\b' . htmlspecialchars($key, ENT_QUOTES, 'UTF-8') . '\b)(?!([^<]*>))/ums', '$1<' . $value['TAGNAME'] . ' lang="' . $value['LANG'] . '" title="' . htmlspecialchars($value['TITLE'], ENT_QUOTES, 'UTF-8') . '">$2</' . $value['TAGNAME'] . '>$3', $str); break; } } var_dump($array); echo '</pre>' ; echo $str ; ?>
Output for 5.3.4 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
<pre>array(1) { ["m"]=> array(3) { ["TITLE"]=> string(9) "mètre(s)" ["LANG"]=> string(2) "fr" ["TAGNAME"]=> string(4) "abbr" } } </pre>Venez découvrir Rose Palace dans le Parc du Domaine de Vizille. L&#039;artiste-plasticienne Viviane Rabaud noue, assemble, recompose à travers des gestes simples et répétitifs. Elle joue avec les matières, dialogue avec le lieu à travers son axe de travail : le tissage...<br>Avec la métamorphose Rose Palace, elle interroge l&#039;histoire et s&#039;approprie le symbole de la Bastille.
Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.3
<pre>array(1) { ["m"]=> array(3) { ["TITLE"]=> string(9) "mètre(s)" ["LANG"]=> string(2) "fr" ["TAGNAME"]=> string(4) "abbr" } } </pre>Venez découvrir Rose Palace dans le Parc du Domaine de Vizille. L&#039;artiste-plasticienne Viviane Rabaud noue, assemble, recompose à travers des gestes simples et répétitifs. Elle joue avec les matières, dialogue avec le lieu à travers son axe de travail : le tissage...<br>Avec la <abbr lang="fr" title="mètre(s)">m</abbr>étamorphose Rose Palace, elle interroge l&#039;histoire et s&#039;approprie le symbole de la Bastille.
Output for 4.3.0 - 4.3.1

Process exited with code 139.

preferences:
343.02 ms | 401 KiB | 459 Q