Por lo que estoy viendo parece que "strtolower(array_shift($ruta))" no se puede usar directamente en el "Operador de fusión de null"
Código PHP:
$this->metodo=$ruta?strtolower(array_shift($ruta)):'index';
Código PHP:
$this->metodo=strtolower(array_shift($ruta))??'index';