3v4l.org

run code in 300+ PHP versions simultaneously
<?php echo "PHP:\n"; // echo "1: \", "\n"; - syntax error echo "2: \\", "\n"; // outputs \ // echo "3: \\\", "\n"; - syntax error echo "4: \\\\", "\n"; // outputs \\ // echo "5: \\\\\", "\n"; - syntax error echo "6: \\\\\\", "\n"; // outputs \\\ // echo "7: \\\\\\\", "\n"; - syntax error echo "8: \\\\\\\\", "\n"; // outputs \\\\ echo "\nPHP + PCRE:\n"; // skipping odd counts because they're all syntax errors echo "2: ", preg_replace('/^/', '\\', ""), "\n"; // PCRE receives \ and allows it as a lone \ -> output \ echo "4: ", preg_replace('/^/', '\\\\', ""), "\n"; // PCRE receives \\ and interprets it as \ -> output \ echo "6: ", preg_replace('/^/', '\\\\\\', ""), "\n"; // PCRE receives \\\ and interprets it as \ + lone \ -> output \\ echo "8: ", preg_replace('/^/', '\\\\\\\\', ""), "\n"; // PCRE receives \\\\ and interprets it as \\ -> output \\
based on C361B
Output for 5.6.0 - 5.6.25, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.26, 7.4.0 - 7.4.14, 8.0.0
PHP: 2: \ 4: \\ 6: \\\ 8: \\\\ PHP + PCRE: 2: \ 4: \ 6: \\ 8: \\