3v4l.org

run code in 300+ PHP versions simultaneously
<?php function SilentGhost($z){ $z = strtolower($z); $z = preg_replace('/[^a-z0-9 -]+/', '', $z); $z = str_replace(' ', '-', $z); return trim($z, '-'); } function mario($z) { return strtolower(trim(preg_replace("/[^\w]+/", "-", $z), "-")); } function Rooneyl($string) { $new_string = preg_replace("/[^a-zA-Z0-9\s]/", "", $string); $url = preg_replace('/\s/', '-', $new_string); $new_url = urlencode($url); return $new_url; } function AbhishekGoel($string) { $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. $string = preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. return preg_replace('/-+/', '-', $string); // Replaces multiple hyphens with single one. } function HelloHack($data) { $data = trim($data); $data = stripslashes($data); $data = htmlspecialchars($data); return $data; } function DenisMatafonov($str) { $withSpecCharacters = htmlspecialchars($str); $splitted_str = str_split($str); $result = ''; foreach ($splitted_str as $letter){ if (strpos($withSpecCharacters, $letter) !== false) { $result .= $letter; } } return $result; } function AdeelRazaAzeemi($str) { $str = str_replace(' ', '-', $str); $str = preg_replace('/[^\x20-\x7E]/', '', $str); return $str; } function mickmackusa($string) { return trim(preg_replace('/[^a-z0-9]+/', '-', strtolower($string)), '-'); } $strings = [ 'This, is - - the URL!', 'Mork & Mindy', 'What the_underscore ?!?' ]; $funcs = ['SilentGhost', 'mario', 'Rooneyl', 'AbhishekGoel', 'HelloHack', 'DenisMatafonov', 'AdeelRazaAzeemi', 'mickmackusa']; foreach ($strings as $string) { echo "\n---\n" . var_export($string, true) . "\tinput\n"; foreach ($funcs as $func) { echo var_export($func($string), true) . "\t$func\n"; } }
Output for 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.19, 8.3.0 - 8.3.4, 8.3.6 - 8.3.7
--- 'This, is - - the URL!' input 'this-is-----the-url' SilentGhost 'this-is-the-url' mario 'This-is---the-URL' Rooneyl 'This-is-the-URL' AbhishekGoel 'This, is - - the URL!' HelloHack 'This, is - - the URL!' DenisMatafonov 'This,-is-----the-URL!' AdeelRazaAzeemi 'this-is-the-url' mickmackusa --- 'Mork & Mindy' input 'mork--mindy' SilentGhost 'mork-mindy' mario 'Mork--Mindy' Rooneyl 'Mork-Mindy' AbhishekGoel 'Mork &amp; Mindy' HelloHack 'Mork & Mindy' DenisMatafonov 'Mork-&-Mindy' AdeelRazaAzeemi 'mork-mindy' mickmackusa --- 'What the_underscore ?!?' input 'what-theunderscore' SilentGhost 'what-the_underscore' mario 'What-theunderscore-' Rooneyl 'What-theunderscore-' AbhishekGoel 'What the_underscore ?!?' HelloHack 'What the_underscore ?!?' DenisMatafonov 'What-the_underscore-?!?' AdeelRazaAzeemi 'what-the-underscore' mickmackusa
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 --- 'This, is - - the URL!' input 'this-is-----the-url' SilentGhost 'this-is-the-url' mario 'This-is---the-URL' Rooneyl 'This-is-the-URL' AbhishekGoel 'This, is - - the URL!' HelloHack 'This, is - - the URL!' DenisMatafonov 'This,-is-----the-URL!' AdeelRazaAzeemi 'this-is-the-url' mickmackusa --- 'Mork & Mindy' input 'mork--mindy' SilentGhost 'mork-mindy' mario 'Mork--Mindy' Rooneyl 'Mork-Mindy' AbhishekGoel 'Mork &amp; Mindy' HelloHack 'Mork & Mindy' DenisMatafonov 'Mork-&-Mindy' AdeelRazaAzeemi 'mork-mindy' mickmackusa --- 'What the_underscore ?!?' input 'what-theunderscore' SilentGhost 'what-the_underscore' mario 'What-theunderscore-' Rooneyl 'What-theunderscore-' AbhishekGoel 'What the_underscore ?!?' HelloHack 'What the_underscore ?!?' DenisMatafonov 'What-the_underscore-?!?' AdeelRazaAzeemi 'what-the-underscore' mickmackusa

preferences:
161.66 ms | 404 KiB | 151 Q