explicar esta pregunta de la entrevista a mí:
Q: Si la variable $ a es igual a 5 y variable $ b es igual a un personaje, ¿cuál es el valor de $$ b?
A: 5, es una referencia a la variable existente.
explicar esta pregunta de la entrevista a mí:
Q: Si la variable $ a es igual a 5 y variable $ b es igual a un personaje, ¿cuál es el valor de $$ b?
A: 5, es una referencia a la variable existente.
Eso es un variable variable. PHP buscará la variable con el nombre almacenado en la cadena $b
. Entonces, si $b == 'a'
entonces $$b == $a
.
Es muy similar a los punteros en C, excepto que usan cadenas de nombre de variable en lugar de direcciones de memoria para señalarse entre sí. Y se puede eliminar la referencia tantas veces como desee:
$a = 5;
foreach (range('b', 'z') as $L) {
$$L = chr(ord($L) - 1);
}
echo $$$$$$$$$$$$$$$$$$$$$$$$$$z;
Salida:
5
hermosa ...... –
@Stefano: esa es una palabra para ... – nickf
Murali podría estar en blanco al respecto, pero el ejemplo es increíble ... –
$$b - 100
= $a - 100 // substituting $b=a
= 5 - 100
= -95
La siguiente es una buena referencia de las variables de PHP
no sé Si el '?' es erróneo en la declaración '$$ b? - 100 'pero no creo que compile.
Sin embargo:
$a = 5
$b = 'a';
$c = $$b - 100;
$ c será igual a -95, porque $$ b es una referencia variable variable y dado que $ a = 5 se resuelve a $ a (5) - 100, o -95 .
'$$ b' es la sintaxis perfectamente legal –
@webdestroya pero '$$ b?' no es –
Sí, me refería al '?' personaje del '$$ b? - 100 'parte de la pregunta. :) – mkgrunder
-95
es la respuesta como si u echo $b
u conseguirá salida como "a
" y si u echo $a
u conseguirá a cabo, sino como "5
"
por lo tanto, en este sentido, cuando u $(echo $b)
cuales misma que $(a)
por lo tanto, u obtendrá como "5-100
", que es "-95
"
la respuesta es -95
$a - 100
¿Qué está haciendo ese '-100' allí? –
@Fernandes 100 es la respuesta! –
¿por qué 100 es la respuesta? ¿No es $$ b debería ser igual a 5? – anru