Foros del Web » Programando para Internet » PHP »

Usar una variable como string

Estas en el tema de Usar una variable como string en el foro de PHP en Foros del Web. Hola, vamos a ver si me explico bien . Quiero saber si se puede, en vez de poner, por ejemplo: Código PHP: $v  =  $i ...
  #1 (permalink)  
Antiguo 09/11/2004, 13:38
Avatar de caerolus  
Fecha de Ingreso: agosto-2004
Ubicación: Madrid, España
Mensajes: 280
Antigüedad: 13 años, 3 meses
Puntos: 1
Usar una variable como string

Hola, vamos a ver si me explico bien .
Quiero saber si se puede, en vez de poner, por ejemplo:

Código PHP:
$v $i
poder poner esto:

Código PHP:
$v "$i"
o esto:

Código PHP:
$v alguna_funcion("i"); 
Se puede hacer?? No creo, pero weno, por preguntar...Gracias
  #2 (permalink)  
Antiguo 09/11/2004, 13:41
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
No se porque siento que el resultado es el mismo, aunque.. esto te puede ayudar mucho: http://www.php.net/manual/es/language.variables.php
  #3 (permalink)  
Antiguo 09/11/2004, 15:09
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 14 años, 1 mes
Puntos: 11
Si la variable es del tipo ese $i y no del tipo $i['algo'] se puede asignar asi.

$x=$i es igual a $x="$i", dado que php colocará entre comillas el valor de $i

Ahora si comparas teniendo en cuenta el tipo, no da igual, por ejemplo:

$x=1;
$y=1;
$z="$y";

if ($x==$z) te dirá que son iguales, en cambio:

if ($x===$z) te dirá que no son iguales, dado que $x es un entero y $y al asignarlo a $z entre comillas se convierte en una cadena.

Espero estar 100% correcto. Sino que me corrijan.

Última edición por claudiovega; 09/11/2004 a las 15:10
  #4 (permalink)  
Antiguo 09/11/2004, 18:20
Avatar de caerolus  
Fecha de Ingreso: agosto-2004
Ubicación: Madrid, España
Mensajes: 280
Antigüedad: 13 años, 3 meses
Puntos: 1
Vamos a ver

A ver, os cuento. Lo que tengo es un array $v, y tengo q asignarle un valor nuevo a algunas celdas del array, pero no a todas. Es decir, por ejemplo actualizar $v[1] y $v[2], pero no $v[0] ni $v[3].
El problema, es que no sé a priori cuales son esas variables, o qué índices son. Sé que tendré, por ejemplo en este caso, una variable que será $i_0 y otra que será $i_3, nuevos valores de $v[0] y $v[3] respectivamente.
Pero puede que en otra ocasión sólo tenga $i_1, o las tenga todas, luego no puedo hacer una asignación directa como siempre. Bueno, sí puedo, pero intengo no poner algo de tipo $v[0] = $i_0; $v[1] = $_i1; sucesivamente.
Si hubiese algo como una función del tipo f("i_0"), que devuelva el valor de $i_0, pues todo arreglado, pero no sé si habrá.
Si hay alguna otra idea, será bienvenida. Gracias.
  #5 (permalink)  
Antiguo 09/11/2004, 20:40
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Yo creo que en tu caso lo mejor sería trabajar esa variable $i también como un array. De esa forma te evitas la complicación simplemente haciendo
Código PHP:
foreach($i as $posicion=>$valor){
  
$v[$posicion] = $valor;

Y se acabó el asunto...
Saludos
  #6 (permalink)  
Antiguo 09/11/2004, 21:35
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Ah... bueno... y siempre tienes la opción de utilizar "variables variables" pero insisto en que te complicas menos con arrays.
Variables variables en el manual:
http://www.php.net/manual/es/languag...s.variable.php

saludos
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 12:36.