Ваш текущий strrpos
возвращает false
, и поэтому substr
начинается с самого начала.
Пространства имен моделей используют \
, а не /
. Вы должны использовать strrpos($modelName,'\\');
. Двойной \
есть, иначе '
будет отключен. Следовательно, вам нужно экранировать саму обратную косую черту.
$pos =strrpos($modelName,'\\');
$modelName = substr($modelName, $pos);
Теперь это вернет \User
. Если вам не нужна первая косая черта, вы можете перейти с
$modelName = substr($modelName, ++$pos);