3v4l.org

run code in 300+ PHP versions simultaneously
<?php // @see https://git.drupalcode.org/project/canvas/-/blob/6b2c5a7dbee665d8de5dce7a462f0616f178d62a/src/PathProcessor/ExperienceBuilderPathProcessor.php function processInbound($path) { if (preg_match('@^/xb/(?!api/)[^/]+/[^/]+@', $path, $matches)) { return $matches[0]; } return $path; } $cases = [ '/xb', '/xb/foo', '/xb/api/something', '/xb/node/42', ]; foreach ($cases as $c) { print sprintf("%s -> %s\n", $c, processInbound($c)); }
Output for 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
/xb -> /xb /xb/foo -> /xb/foo /xb/api/something -> /xb/api/something /xb/node/42 -> /xb/node/42

preferences:
46.76 ms | 712 KiB | 4 Q