3v4l.org

run code in 300+ PHP versions simultaneously
<?php if(isset($_POST['submit'])) { $text = htmlspecialchars($_POST['input']); $lines = explode(PHP_EOL, $text); $bullets = array(); foreach ($lines as $line) { if (strlen($line) > 0) { preg_match("/([^\s]+)\s+(\w+)/", $line,$captured); if (count($captured) > 1 ) { if (strcmp($captured[1], end($bullets))) { if (count($bullets) > 1 && !strcmp($bullets[count($bullets)-2],$captured[1])) { echo '</ul>'; array_pop($bullets); } else { echo '<ul>'; array_push($bullets, $captured[1]); } } echo "<li>$captured[2]</li>"; } } } while (count($bullets)) { echo "</ul>"; array_pop($bullets); } } ?> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" id="deformat"> Formatted data <textarea rows="4" cols="50" name="input" form="deformat" placeholder="pasted formatted text here"> </textarea> Deformatted data <textarea rows="4" cols="50" name="output" form="deformat"> </textarea> <input type="submit" name="submit" value="Clean my data!"> </form>

preferences:
36.95 ms | 402 KiB | 5 Q