3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $pattern = "/(%\S*)/"; $replacement = "%s"; $input_str = "Controller '%d is potentially leaking. All controllers are supposed to have an empty reference count. If this is a non synch sound controller, then script will need to make sure to clean it up."; $messageParameters = ["CVSNyz368g="]; if (preg_match_all($pattern, $input_str, $matches_out)) { $printfCodes = $matches_out[1]; foreach ($printfCodes as $index => $printfCode) { if ($printfCode != "%s" && $printfCode != "%c") { $decodedIntAsString = $messageParameters[$index] . " translated!"; $messageParameters[$index] = $decodedIntAsString; } } if (count($printfCodes) == count($assert['Message Parameter'])) { $new_str = preg_replace($pattern, $replacement, $input_str); echo "swapped printfCodes: " . $new_str . "\n"; // Try and resolve the pfrintf statement using message parameters $resolvedAssert = vsprintf($new_str, $messageParameters); if (!empty($resolvedAssert) && $resolvedAssert != $new_str) { $final_str = $resolvedAssert; echo "finalStr " . $final_str . "\n"; } } } print_r( $messageParameters);
based on WWWVu
Output for 7.2.0
Notice: Undefined variable: assert in /in/69fqJ on line 17 Warning: count(): Parameter must be an array or an object that implements Countable in /in/69fqJ on line 17 Array ( [0] => CVSNyz368g= translated! )
Output for 5.4.0 - 7.1.10
Notice: Undefined variable: assert in /in/69fqJ on line 17 Array ( [0] => CVSNyz368g= translated! )
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.3.29
Parse error: syntax error, unexpected '[' in /in/69fqJ on line 6
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected '[' in /in/69fqJ on line 6
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/69fqJ on line 6
Process exited with code 255.