3v4l.org

run code in 300+ PHP versions simultaneously
<?php $str=<<<TXT test something/action controller/test controller/another controller/action/something action action/test controller/another/somethingelse TXT; $config = array( 'test' => 'The description of test', 'something/action' => 'Some action description', 'controller/another' => 'Another description', 'controller/action/*' => 'This should match the `controller/action/blah` and everything similar like: `controller/action/something` and give this description', 'action' => 'Action description', 'action/*' => 'As the 2nd above, this should match the `action/test` itself, and similar like `action/anothertest` URI' ); foreach(explode("\n",$str) as $line) { $line=trim($line); $dkey=array_filter(array_keys($config),function($key)use($line){return fnmatch($key,$line);}); if(count($dkey)<=0) { echo "(no description)"; } else { echo $config[reset($dkey)]; } echo "\n"; }

preferences:
42.09 ms | 402 KiB | 5 Q