3v4l.org

run code in 300+ PHP versions simultaneously
<?php $uri = 'administrator/clients/client/11'; // function input $routes = array( 'administrator/clients' => 'administrator/clients', 'administrator/client/(:num)' => 'administrator/clients/client/$1', ); foreach ($routes as $route => $controller) { $key = preg_replace('#[$][0-9]+#', '([^/]+)', $controller); // Converter alle $1, $2 osv til "hvad som helts") echo $key; if (preg_match('#^' . $key . '$#', $uri, $match)) { // Okay. Den matcher på $controller (array value) // Nu skal vi så konvertere $uri til den $route, der tilhører $controller echo $route; // Det er en her route // $uri skal altså ligne "administrator/client/11" } }
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.14, 5.6.16 - 5.6.19, 5.6.21 - 5.6.31, 5.6.35 - 5.6.40, 7.0.0 - 7.0.9, 7.0.11, 7.0.13, 7.0.16 - 7.0.33, 7.1.0 - 7.1.19, 7.1.21 - 7.1.33, 7.2.0 - 7.2.26, 7.3.0 - 7.3.13, 7.4.0 - 7.4.1, 8.1.28, 8.2.15 - 8.2.18, 8.3.2 - 8.3.6
administrator/clientsadministrator/clients/client/([^/]+)administrator/client/(:num)
Output for 5.6.15, 5.6.20, 5.6.32 - 5.6.34, 7.0.10, 7.0.12, 7.0.14 - 7.0.15, 7.1.20

Process exited with code 137.

preferences:
263.04 ms | 402 KiB | 335 Q