3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $selfTable = 'songs'; $relTable = 'artists'; $strings = array( 'id', 'artists.name', '$artist.real_name', '$title' ); foreach($strings as $string) { echo preg_replace_callback('#((?P<both>[^\$]+)|\$(?P<self_field>[\w]+)|\$(?P<table>[\w]+)\.(?P<field>[\w]+))#', function($match) { print_r($match); }, $string); }
Output for 5.3.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
Array ( [0] => id [1] => id [both] => id [2] => id ) Array ( [0] => artists.name [1] => artists.name [both] => artists.name [2] => artists.name ) Array ( [0] => $artist [1] => $artist [both] => [2] => [self_field] => artist [3] => artist ) Array ( [0] => .real_name [1] => .real_name [both] => .real_name [2] => .real_name ) Array ( [0] => $title [1] => $title [both] => [2] => [self_field] => title [3] => title )
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.2.17
Parse error: syntax error, unexpected T_FUNCTION in /in/omFI8 on line 13
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 T_FUNCTION in /in/omFI8 on line 13
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/omFI8 on line 13
Process exited with code 255.