Foros del Web » Programando para Internet » PHP »

nombre de variable con variable dentro

Estas en el tema de nombre de variable con variable dentro en el foro de PHP en Foros del Web. Buenas noches, Llevo ya un buen rato comiendome la cabeza tratando de conseguir nombrar una variable con una parte de su nombre cambiante. A ver ...
  #1 (permalink)  
Antiguo 29/08/2008, 13:53
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 1 mes
Puntos: 2
nombre de variable con variable dentro

Buenas noches,
Llevo ya un buen rato comiendome la cabeza tratando de conseguir nombrar una variable con una parte de su nombre cambiante. A ver si me explico, tengo la variable $s_contacto[error14] y quiero poder cambiar segun proceda, la parte que pone error14. Lo he intentado de todas estas maneras y no funciona ninguna:

Código:
$nombre_error = "error834";

$s_contacto[$nombre_error];
${"s_contacto[".$nombre_error."]"};
${"s_contacto[$nombre_error]"};
Pues eso, ninguna de esas formas funciona, a ver si me podeis ayudar. Un saludo y gracias
  #2 (permalink)  
Antiguo 29/08/2008, 14:01
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: nombre de variable con variable dentro

Lo que quieres se llama variables variables
http://www.webtaller.com/construccio...iables_php.php
http://www.php.net/variables.variable
  #3 (permalink)  
Antiguo 29/08/2008, 15:14
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: nombre de variable con variable dentro

Gracias Ronruby, he estado mirando los dos enlaces pero no solucionan mi problema, o al menos yo no he conseguido hacerlo. lo k esos dos enlaces explican es algo que ya mas o menos sabia, el problema aqui es que quiero nombrar como variable solo la parte que se encuentra entre corchetes, y de las maneras que he probado no funcionan. Alguien sabe como hacerlo?
  #4 (permalink)  
Antiguo 29/08/2008, 15:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: nombre de variable con variable dentro

Mmm creo el problema lo tienes desde la definicion ya que una variable no puede tener corchetes, ya que estos indican el indice de un arreglo, y es por eso que no te sirve.

Saludos.
  #5 (permalink)  
Antiguo 29/08/2008, 15:20
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: nombre de variable con variable dentro

Código PHP:
$nombre_error "error834";

$s_contacto[$nombre_error];
${
$s_contacto[$nombre_error]} = "xD"// ó 
${$nombre_error} = "xD" 
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #6 (permalink)  
Antiguo 29/08/2008, 15:25
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: nombre de variable con variable dentro

Hola GatorV, si tu no me has resuelto mas de la mitad de mis preguntas no me has resuelto ninguna jejej
yo tengo una lista de errores tal que asi:
Código:
$s_contacto[error127] = "lo que sea";
$s_contacto[error142] = "lo que sea";
$s_contacto[error133] = "lo que sea";
$s_contacto[error110] = "lo que sea";
yo lo que quiero es que la parte donde pone error127 por ejemplo sea variable
Código:
$s_contacto[error127] = "lo que sea";
$s_contacto[error142] = "lo que sea";
$s_contacto[error133] = "lo que sea";
$s_contacto[error110] = "lo que sea";

$nombre_error = "133";

echo $s_contacto[$nombre_error]; 
Siendo lo que esta en rojo un ejemplo que no funciona. Gracias por anticipado.

Última edición por SubZero_mb; 29/08/2008 a las 16:06
  #7 (permalink)  
Antiguo 29/08/2008, 15:33
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: nombre de variable con variable dentro

nada toleratx, tampoco funciona asi
  #8 (permalink)  
Antiguo 29/08/2008, 15:40
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 8 meses
Puntos: 103
Respuesta: nombre de variable con variable dentro

Código PHP:
$s_contacto[error127] = "lo que sea";
$s_contacto[error142] = "lo que sea";
$s_contacto[error133] = "lo que sea";
$s_contacto[error110] = "lo que sea";

$error "error133";

echo 
$s_contacto[$error]; 
prueba asi, saludos
  #9 (permalink)  
Antiguo 29/08/2008, 15:42
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: nombre de variable con variable dentro

De hecho no te entendí muy bien :P
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #10 (permalink)  
Antiguo 29/08/2008, 15:50
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: nombre de variable con variable dentro

chwc esa manera que propones es una de las tres que puse en el primer post diciendo que probe y no funcionaba. Aun asi gracias por escribir.
  #11 (permalink)  
Antiguo 29/08/2008, 15:56
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 8 meses
Puntos: 103
Respuesta: nombre de variable con variable dentro

no nescesitara comillas para ser identificado????
Código PHP:
$nombre_error "error834";

$s_contacto['$nombre_error'];
${
"s_contacto[".$nombre_error."]"}; 
  #12 (permalink)  
Antiguo 29/08/2008, 16:06
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: nombre de variable con variable dentro

¿No es más práctico hacer directamente un arreglo con todas las de la ley o necesitas que sea así por alguna razón especial?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #13 (permalink)  
Antiguo 29/08/2008, 16:17
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: nombre de variable con variable dentro

nada, tampoco... :(
  #14 (permalink)  
Antiguo 29/08/2008, 16:24
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 8 meses
Puntos: 103
Respuesta: nombre de variable con variable dentro

lo que seria mas facil es que tenga una variable para el error por ej:
Código PHP:
$mierrores 2;
$error[] = "eres demasiado tonto para entrar aqui";
$error[] = "tu tambien";
$error[] = "no, no tu no tienes talento";
echo 
$error['$mierrores']; 
  #15 (permalink)  
Antiguo 29/08/2008, 16:36
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: nombre de variable con variable dentro

Cita:
Iniciado por SubZero_mb Ver Mensaje
nada, tampoco... :(
Mira man la veo faci....

Código PHP:
<?php
//declaras todos tus errores
$s_contacto[error127] = "lo que sea 127";
$s_contacto[error142] = "lo que sea 142";
$s_contacto[error133] = "lo que sea 133";
$s_contacto[error110] = "lo que sea 110";

//colocas cual es el nombre del error a llamar
$nombre_error "133";

// y punto lo muestras.....
echo $s_contacto['error'.$nombre_error];
?>
y si sale.... ami me sale asi.....

oye pero no seria mas facil en un arreglo, algo asi:

Código PHP:
//guardas asi de simple cada error
$a[]="aaa";
$a[]="bbb";
$a[]="ccc";

//y luego llamas a su indice
echo $a[0]; 
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #16 (permalink)  
Antiguo 29/08/2008, 17:31
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: nombre de variable con variable dentro

Oye perdonad, k fue un error tonto k nada tenia k ver con esto. Lo siento por haberos hecho perder el tiempo y gracias por vuestra ayuda. Con algo tan simple como:
Cita:
$s_contacto[$error]
hubiera valido si me hubiera dado cuenta de el fallo k tenia de por medio. Gracias
  #17 (permalink)  
Antiguo 30/08/2008, 04:54
Avatar de Naguissa  
Fecha de Ingreso: junio-2008
Mensajes: 37
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: nombre de variable con variable dentro

Cita:
Iniciado por SubZero_mb Ver Mensaje
Oye perdonad, k fue un error tonto k nada tenia k ver con esto. Lo siento por haberos hecho perder el tiempo y gracias por vuestra ayuda. Con algo tan simple como:

hubiera valido si me hubiera dado cuenta de el fallo k tenia de por medio. Gracias
¿Podría ser que las definiciones van con comillas?

$s_contacto[error127] = "lo que sea 127";

pasaría a ser:

$s_contacto["error127"] = "lo que sea 127";
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 11:27.