3v4l.org

run code in 300+ PHP versions simultaneously
<?php $search = array( '/&#36;/', "/\r/", // Non-legal carriage return "/[\n\t]+/", // Newlines and tabs '/[ ]{2,}/', // Runs of spaces, pre-handling '/<script[^>]*>.*?<\/script>/i', // <script>s -- which strip_tags supposedly has problems with '/<style[^>]*>.*?<\/style>/i', // <style>s -- which strip_tags supposedly has problems with //'/<!-- .* -->/', // Comments -- which strip_tags might have problem a with '/<h[123][^>]*>(.*?)<\/h[123]>/i', // H1 - H3 '/<h[456][^>]*>(.*?)<\/h[456]>/ie', // H4 - H6 '/<p[^>]*>/i', // <P> '/<br[^>]*>/i', // <br> '/<b[^>]*>(.*?)<\/b>/i', // <b> '/<strong[^>]*>(.*?)<\/strong>/i', // <strong> '/<i[^>]*>(.*?)<\/i>/i', // <i> '/<em[^>]*>(.*?)<\/em>/i', // <em> '/(<ul[^>]*>|<\/ul>)/i', // <ul> and </ul> '/(<ol[^>]*>|<\/ol>)/i', // <ol> and </ol> '/<li[^>]*>(.*?)<\/li>/i', // <li> and </li> '/<li[^>]*>/i', // <li> // '/<a [^>]*href="(.*?)([^"]+)"[^>]*><\/a>/ie', '/<a [^>]*href="([^"]+)"[^>]*>(.*?)<\/a>/ie', // <a href=""> '/<hr[^>]*>/i', // <hr> '/(<table[^>]*>|<\/table>)/i', // <table> and </table> '/(<tr[^>]*>|<\/tr>)/i', // <tr> and </tr> '/<td[^>]*>(.*?)<\/td>/i', // <td> and </td> '/<th[^>]*>(.*?)<\/th>/i', // <th> and </th> '/&(nbsp|#160);/i', // Non-breaking space '/&(quot|rdquo|ldquo|#8220|#8221|#147|#148);/i', // Double quotes '/&(apos|rsquo|lsquo|#8216|#8217);/i', // Single quotes '/&gt;/i', // Greater-than '/&lt;/i', // Less-than '/&(amp|#38);/i', // Ampersand '/&(copy|#169);/i', // Copyright '/&(trade|#8482|#153);/i', // Trademark '/&(reg|#174);/i', // Registered '/&(mdash|#151|#8212);/i', // mdash '/&(ndash|minus|#8211|#8722);/i', // ndash '/&(bull|#149|#8226);/i', // Bullet '/&(pound|#163);/i', // Pound sign '/&(euro|#8364);/i', // Euro sign //'/&[^&;]+;/i', // Unknown/unhandled entities '/&[a-z0-9#]{1,10};/i', // Unknown/unhandled entities '/[ ]{2,}/' // Runs of spaces, post-handling ); /** * List of pattern replacements corresponding to patterns searched. * * @var array $replace * @access public * @see $search */ $replace = array( '$', '', // Non-legal carriage return ' ', // Newlines and tabs ' ', // Runs of spaces, pre-handling '', // <script>s -- which strip_tags supposedly has problems with '', // <style>s -- which strip_tags supposedly has problems with //'', // Comments -- which strip_tags might have problem a with "\n\n\\1\n\n", // H1 - H3 "ucwords(\"\n\n\\1\n\n\")", // H4 - H6 "\n\n\t", // <P> "\n", // <br> "\\1", // <b> "\\1", // <strong> '_\\1_', // <i> '_\\1_', // <em> "\n\n", // <ul> and </ul> "\n\n", // <ol> and </ol> "\t* \\1\n", // <li> and </li> "\n\t* ", // <li> '$this->_build_link_list("\\1", "\\2")', // <a href=""> "\n-------------------------\n", // <hr> "\n\n", // <table> and </table> "\n", // <tr> and </tr> "\t\t\\1\n", // <td> and </td> "\t\t\\1\n", // <th> and </th> ' ', // Non-breaking space '"', // Double quotes "'", // Single quotes '>', '<', '&', '(c)', '(tm)', '(R)', '--', '-', '*', '▒', 'EUR', // Euro sign. . ? '', // Unknown/unhandled entities ' ' // Runs of spaces, post-handling ); var_dump(preg_replace($search, $replace, "&#36;"));
Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 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
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/4iCkB on line 104 NULL
Output for 5.5.24 - 5.5.35, 5.6.8 - 5.6.28
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /in/4iCkB on line 104 Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /in/4iCkB on line 104 string(1) "$"
Output for 4.3.0 - 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.29, 5.4.0 - 5.4.45
string(1) "$"

preferences:
228.74 ms | 403 KiB | 329 Q