Imprimir array de un objeto (PHP)

LR

Buenas,

Vereis, tengo el siguiente problema/duda.

Tengo una clase tal que asi:

Class.php

Y luego esto:

index.php

Mi intencion es poder hacer un simple echo $inicial[1]; o mostrar el valor que quiera del array.

El problema viene en que para eso, tengo que cambiar la variable a "public" para poder hacer un $x = $inicial->variable; y asi poder hacer un $x[1];

Existe alguna manera de hacerlo sin tener que tener la variable como publica y/o sin tener que nada mas despues de crear el nuevo objeto?

Seguramente habre soltado bastantes tonterias ya que estoy empezando ahora con la POO, asi que no me comais xD

Thx ^^

BLZKZ

la única forma es con un accedente.

La primera norma es que los atributos privados no son accesibles desde fuera de la clase.

En ningún momento usaría atributos publicos asi que vas a tener que hacer si o si un accedente que te devuelva la variable y hacer un for que recorra el array de objetos y que cada objeto llame al accedente del atributo y hacer un echo de lo que devuelve (echo, print o lo que te salga del mondongo

LR

Ahi me he perdido.. xDD

Hacer un metodo publico que me devuelva ese mismo array?

Ahora mismo tengo otra clase que me crea una conex a la bd y me devuelve la conex:

conex.php

que seria algo asi?

LOc0

#2 Te lo ha explicado perfectamente. Lo máximo que puedes hacer en PHP es:

echo $inicial->1;

$inicial->2=23;

Y sobreescribir los "métodos mágicos" __get y __set http://www.php.net/manual/es/language.oop5.overloading.php#language.oop5.overloading.members

así:

public function __get($index) {return $this->variable[$index];}
public function __set($index, $value) {$this->variable[$index]=$value;}

Para poder hacer exactamente lo que pides sería necesario sobrecargar el operador [] , pero esto no es C++ ;)

Salu2 ;)

g4sb0

#3 Siempre que tengas variables privadas tienes que hacer metodos get/set =)

LR

Thx a los 3. Mañana lo probare a ver que tal me va.

Y yo que pensaba que empezar con las clases era complicado y me liaba... a ver la que lio ahora con get/set xDD

BLZKZ

piensa siempre en el significado de get y set XD

Usuarios habituales

  • BLZKZ
  • LR
  • g4sb0
  • LOc0