<?php
$result = preg_replace( '#\/_([a-z]+\/)\g#', '/$1$1', '/_ticket/_show/xxx' );
var_dump( $result ); exit;
$found = null;
$route = '/_ticket/';
foreach ( explode( '/', trim( $route, '/' ) ) as $part => $r )
{
$uscore = strpos( $r, '_' );
$times = substr_count( $r, '_' );
if ( 1 != $times || 0 != $uscore )
{
continue;
}
$found = $part;
break;
}
if ( null !== $found )
{
$parts = explode( '/', trim( $route, '/' ) );
$before = array_slice( $parts, 0, $found, true );
$after = array_slice( $parts, $found + 1, null, true );
$replacePart = ltrim( $parts[ $found ], '_' );
$before[] = $replacePart;
$before[] = $replacePart;
foreach ( $after as $part )
{
$before[] = $part;
}
}
preferences:
67.08 ms | 402 KiB | 5 Q