Foros del Web » Programando para Internet » PHP »

Variable dentro de array?

Estas en el tema de Variable dentro de array? en el foro de PHP en Foros del Web. Tengo el siguiente codigo Código PHP: <?php $data  =  file_get_contents ( 'archivo.txt' ); class  foo  {     var  $arr  = array( 'Soy A.' ,  'Soy B.'  , 'Soy C.' ); ...
  #1 (permalink)  
Antiguo 31/10/2012, 19:01
 
Fecha de Ingreso: octubre-2012
Mensajes: 45
Antigüedad: 11 años, 5 meses
Puntos: 0
Pregunta Variable dentro de array?

Tengo el siguiente codigo

Código PHP:
<?php

$data 
file_get_contents('archivo.txt');

class 
foo {

    var 
$arr = array('Soy A.''Soy B.' ,'Soy C.');
    var 
$r 'Soy r';

}
$foo = new foo();
$arr 'arr';

?>

Y lo inserto dentro de la siguiente manera:


Código PHP:
<?php echo $foo->$arr[1] . "\n"?>  // Soy r

<?php echo $foo->{$arr}[1] . "\n"?> // Soy B

Lo que quiero saber y no me sale, es como poner una variable en lugar de "Soy B"

Asi:

Código PHP:
<?php

$data 
file_get_contents('archivo.txt');

class 
foo {

    var 
$arr = array('Soy A.''$data' ,'Soy C.');
    var 
$r 'Soy r';

}
$foo = new foo();
$arr 'arr';

?>
Para obtener el siguiente resultado:


Código PHP:
<?php echo $foo->$arr[1] . "\n"?>  // Soy r

<?php echo $foo->{$arr}[1] . "\n"?> // El contenido del TXT


Si lo pongo entre comillas simples ( '$data' ) se muestra como texto, y si se las quito no se muestra la pagina...

Gracias por su ayuda!!


.
  #2 (permalink)  
Antiguo 31/10/2012, 19:36
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Variable dentro de array?

estas aplicando mal la lógica, no puedes agregar una variable a una función o una clase si no la pasa como parámetro o de lo contrario hacerla de ámbito global.
te dejo un ejemplo:
Código PHP:
Ver original
  1. $data = file_get_contents('archivo.txt');
  2.  
  3. class foo {
  4.     private $arr=array();
  5.  
  6.     public function __construct($data){
  7.         $this->arr = array('Soy A.', $data ,'Soy C.');
  8.     }
  9.  
  10.     public function getDato($pos){
  11.         return $this->arr[$pos];
  12.     }
  13.  
  14. }
  15. $foo = new foo($data);
  16. echo $foo->getDato(1);
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #3 (permalink)  
Antiguo 01/11/2012, 09:38
 
Fecha de Ingreso: octubre-2012
Mensajes: 45
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Variable dentro de array?

Cita:
Iniciado por eits Ver Mensaje
estas aplicando mal la lógica, no puedes agregar una variable a una función o una clase si no la pasa como parámetro o de lo contrario hacerla de ámbito global.
te dejo un ejemplo:
Código PHP:
Ver original
  1. $data = file_get_contents('archivo.txt');
  2.  
  3. class foo {
  4.     private $arr=array();
  5.  
  6.     public function __construct($data){
  7.         $this->arr = array('Soy A.', $data ,'Soy C.');
  8.     }
  9.  
  10.     public function getDato($pos){
  11.         return $this->arr[$pos];
  12.     }
  13.  
  14. }
  15. $foo = new foo($data);
  16. echo $foo->getDato(1);

Funciona perfecto, muchas gracias!

Apenas voy aprendiendo con PHP pero con ayuda todo sera mejor. Gracias amigo.

.


Etiquetas: variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:12.