3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php define('EFS_IFRAME', 1);define('EFS_URI', 2);$src = 'https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/156742959&color=ff5500&auto_play=false&hide_related=false&show_comments=true&show_user=true&show_reposts=false'; $efs_contents = array( EFS_IFRAME => array('regex' => '#(?:<(div|span)[^>]*>[\s]*)*<iframe[\s]*([^>]+)>[\s]*<\/iframe[^>]*>(?:[\s]*<embed[^>]*>[^<]*<\/embed[^>]*>[\s]*)*(?:<\/(?:div|span)[^>]*>)*#iu', 'callback' => 'efs_iframe_callback' ) ); $efs_params = array( EFS_IFRAME => array( 'src' => '#src[\s]*=[\s]*[\'"]([^\'"]*)[\'"]#i', 'width' => '#width[\s]*=[\s]*[\'"]([^\'"]*)[\'"]#i', 'height' => '#height[\s]*=[\s]*[\'"]([^\'"]*)[\'"]#i', 'title' => '#title[\s]*=[\s]*[\'"]([^\'"]*)[\'"]#i', 'scrolling' => '#scrolling[\s]*=[\s]*[\'"]([^\'"]*)[\'"]#i', 'frameborder' => '#frameborder[\s]*=[\s]*[\'"]([^\'"]*)[\'"]#i' /* 'allowfullscreen' => '#allowfullscreen#i' */ ), EFS_URI => array( 'url' => 'url=([^&]*)', 'color' => 'color=([^&]*)', 'autoplay' => 'autoplay=([^&]*)', 'hide_related' => 'hide_related=([^&]*)', 'show_comments' => 'show_comments=([^&]*)', 'show_user' => 'show_user=([^&]*)', 'show_reposts' => 'show_reposts=([^&]*)' ) ); function efs_param_decode( $str, $context=EFS_IFRAME ) { global $efs_params; $getparams = $efs_params[$context]; $params = array(); foreach ($getparams as $key => $regex) { if(preg_match($regex, $str, $output)) $params[$key] = end($output); } return $params; } $v = efs_param_decode( $src, EFS_URI );
based on bbHdi
Output for 4.3.11 - 5.6.28, 7.0.0 - 7.1.0
Warning: preg_match(): Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: preg_match(): Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: preg_match(): Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: preg_match(): Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: preg_match(): Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: preg_match(): Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: preg_match(): Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12
Output for 4.3.0 - 4.3.10, hhvm-3.10.0 - 3.12.0
Warning: Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12 Warning: Delimiter must not be alphanumeric or backslash in /in/gRUbv on line 12