
Gastón Berruet
Pregunta¿Por qué el primer elemento 0 del array esta vacío cuando realiza el
var_dump($this->segments)

Enrique Gamboa
Entendamos qué está pasando.
$_SERVER
platzi.com/cursos
$_SERVER[REQUEST_URI]
/cursos
Este URI que nos devolvió lo pasamos por la función explode()
explode('/', $_SERVER['REQUEST_URI']);
'nunca pares de apender'
explode(' ', 'nunca pares de aprender']);
Muy bien, nuestro URI ya está dividido por partes, ahora tenemos que almacenar estas partes en una variable. Esto es justamente lo que hace esta línea:
$this->segments = explode('/', $_SERVER['REQUEST_URI']);
Ahora para ver lo que tenemos almacenado en
$segments
var_dump()
var_dump($this->segments);
Esto es justamente lo que está sucediendo con el código. Entender qué es lo que hace tu código en cada momento es muy importante, para eso existe la documentación oficial donde puedes aprender más al respecto: https://www.php.net/
Referencias: https://www.php.net/manual/es/reserved.variables.server.php https://platzi.com/clases/2032-datos-php/32091-extraccion-de-datos/ https://www.php.net/manual/es/function.explode.php https://www.php.net/manual/es/function.var-dump

Jaime Andres Valencia Gaviria
porque la ruta inicia con / y eso lo toma como vacio segun parece, porque no esta entrando a ninguna subcarpeta u otro controller

Martín S. Campos
Por que en si la ruta/request empieza con /, al separar se encuentra que antes de esa ruta no hay nada. platzi.test / controller / method, sin contar el platzi.test