PHP - Problema con arreglo y clase en php

 
Vista:

Problema con arreglo y clase en php

Publicado por MATIAS (9 intervenciones) el 14/07/2006 21:12:09
Estoy trabajando con una clase en un archivo escrito en php y tenia un par de problemas.
Considero que va a ser más facil describir mi problema que mostrarles el codigo asiqu les cuento:

Tengo una clase que se llama "subsec"
class subsec
{
var...
function metodo1()
{
...
}
.....
}

luego tengo un arreglo "$sl" y cada miembro de este, es una instancia de subsec.

Al instanciarlo, no encontré otra forma que instanciar miembro por miembro con un "for", de la siguiente manera:

for($i ; $i<50; $i++)
$sl[$i]=new subsec;

estoy seguro que debe haber alguna otra forma mas ortodoxa, pero no la encontre.

este for esta adentro de un gran bloque "if"

Mi problema es que fuera de este bloque "if" no puedo usar el array $sl
por ejemplo si escribo la siguiente sentencia fuera del bloque if,

$sl[0] -> metodo1();
me sale el error: Call to a member function on a non-object in....
Si ubico esta sentencia dentro del bloque if, no me sale ningun error.

Es decir que es como que lo considera global con respecto al bloque if

¿Cómo podría hacer para poder seguir usando el arreglo de forma global?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con arreglo y clase en php

Publicado por FiSiCo (403 intervenciones) el 18/07/2006 02:26:20
declara $sl como global

http://www.php.net/manual/es/language.variables.scope.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema con arreglo y clase en php

Publicado por matias (9 intervenciones) el 18/07/2006 02:37:43
ya encontre el problema, al final nada que ver con lo que pensaba. el problema era que instanciaba algunos elementos del arreglo y otros no.
entonces me salia ese error para los elementos no instanciados
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar