3v4l.org

run code in 300+ PHP versions simultaneously
<?php $pattern = "#^/([a-z]{2})/([a-zA-Z0-9_-]++)/([a-zA-Z0-9_-]++)/(.*/)?+[/]{0,1}$#"; $pattern = "#^/([a-z]{2})/([a-zA-Z0-9_-]++)/([a-zA-Z0-9_-]++)((/.*+)?+)+[/]{0,1}$#"; $subject = '/en/user/login/foo/bar/'; var_dump(preg_match($pattern, $subject, $matches), $matches); $subject = '/en/user/login'; var_dump(preg_match($pattern, $subject, $matches), $matches);
Output for git.master, git.master_jit, rfc.property-hooks
int(1) array(6) { [0]=> string(23) "/en/user/login/foo/bar/" [1]=> string(2) "en" [2]=> string(4) "user" [3]=> string(5) "login" [4]=> string(0) "" [5]=> string(9) "/foo/bar/" } int(1) array(5) { [0]=> string(14) "/en/user/login" [1]=> string(2) "en" [2]=> string(4) "user" [3]=> string(5) "login" [4]=> string(0) "" }

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
38.53 ms | 402 KiB | 8 Q