RSS Feeds

20.5.12

foreach devuelve error “Cannot access empty property”

Trabajando en una aplicación me pasé un par de horas resolviendo un error que me devolvía "Cannot access empty property" cuando ejecutaba un bucle foreach para recorrer un array, la solución era tan sencilla pero después, de no dormir un par de días y de demasiadas líneas de código escritas no se hacía tan evidente el error.

Lo malo: 
foreach ($array as $key -> $value)
Esto está mal porque estaríamos llamando al metodo value de alguna clase, ademas de que en las llamadas a métodos no se usa $ antes de su nombre, en una llamada a un método lo correcto sería $key->value(parámetros) el nómbre del método sin el signo de dollar antes, pero no olvidemos que de lo que estamos hablando en este post es de un array, así que continuemos.

Solución: 
reemplaza -> en lugar de => en tu bucle.

Resultado:

foreach ($array as $key => $value)
Con esto ya se recorre bien el array

Saludos.