3v4l.org

run code in 300+ PHP versions simultaneously
<?php $html = 'http://cdn.videourl.mp4?expire=1635939248&token=7022dbc14de970c7uc040ac4f35058f0 http://cdn.videourl.mp4?token=7022dbc14de970c7uc040ac4f35058f0&expire=1635939248'; preg_match_all('/http\S*?\.mp4\?(?:expire=(?P<expire>[0-9]+)&token=(?P<token>[0-9a-z]+)|token=(?P<token>[0-9a-z]+)&expire=(?P<expire>[0-9]+))/J', $html, $posts, // will contain the article data PREG_SET_ORDER // formats data into an array of posts ); var_dump($posts);
Output for git.master_jit, git.master, rfc.property-hooks
array(2) { [0]=> array(5) { [0]=> string(80) "http://cdn.videourl.mp4?expire=1635939248&token=7022dbc14de970c7uc040ac4f35058f0" ["expire"]=> string(10) "1635939248" [1]=> string(10) "1635939248" ["token"]=> string(32) "7022dbc14de970c7uc040ac4f35058f0" [2]=> string(32) "7022dbc14de970c7uc040ac4f35058f0" } [1]=> array(7) { [0]=> string(80) "http://cdn.videourl.mp4?token=7022dbc14de970c7uc040ac4f35058f0&expire=1635939248" ["expire"]=> string(10) "1635939248" [1]=> string(0) "" ["token"]=> string(32) "7022dbc14de970c7uc040ac4f35058f0" [2]=> string(0) "" [3]=> string(32) "7022dbc14de970c7uc040ac4f35058f0" [4]=> string(10) "1635939248" } }

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:
145.14 ms | 407 KiB | 5 Q