3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function HTMLStringify(&$arr, $seen = array()) { if (is_array($arr)) { $seen[] = &$arr; $html = '<ul>'; foreach ($arr as $key => &$value) { $html .= '<li>' . $key; if (is_array($value)){ if(in_array($value, $seen, true)) { $html .= '*RECURSION*'; } else { $html .= HTMLStringify($value, $seen); } } elseif(is_numeric($value) || is_string($value) || is_null($value)) { $html .= ' = ' . $value; } else { $html .= ' [couldn\'t parse ' . gettype($value) . ']'; } $html .= '</li>'; } $html .= '</ul>'; return $html; } else { return null; } } $arr = array(1 => 'one', 2 => 'two'); $arr[3] = &$arr; echo HTMLStringify($arr);
Output for 5.3.15 - 5.3.29, 5.4.5 - 7.1.0
<ul><li>1 = one</li><li>2 = two</li><li>3*RECURSION*</li></ul>
Output for 5.0.0 - 5.3.14, 5.4.0 - 5.4.4
Fatal error: Nesting level too deep - recursive dependency? in /in/l1rrh on line 15
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected '&', expecting T_VARIABLE or '$' in /in/l1rrh on line 9
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected '&', expecting T_VARIABLE or '$' in /in/l1rrh on line 9
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_VARIABLE' or `'$'' in /in/l1rrh on line 9
Process exited with code 255.