3v4l.org

run code in 300+ PHP versions simultaneously
<?php $text = "I went to the dog park yesterday and saw @dog4 playing with @dog8 and @dog3 drinking water -- poor @dog33."; $lookup = [ 'dog4' => 4, 'dog8' => 8, 'dog3' => 3, ]; echo preg_replace_callback( '/@(\w+)/', function ($m) use($lookup) { return isset($lookup[$m[1]]) ? "<span onclick='openPage(\"dogs.php?id={$lookup[$m[1]]}\")' role='link' tabindex='0'>{$m[0]}</span>" : $m[0]; }, $text );
Output for git.master, git.master_jit, rfc.property-hooks
I went to the dog park yesterday and saw <span onclick='openPage("dogs.php?id=4")' role='link' tabindex='0'>@dog4</span> playing with <span onclick='openPage("dogs.php?id=8")' role='link' tabindex='0'>@dog8</span> and <span onclick='openPage("dogs.php?id=3")' role='link' tabindex='0'>@dog3</span> drinking water -- poor @dog33.

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:
27.74 ms | 406 KiB | 5 Q