02/10/2010, 09:20
|
| | | Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 11 meses Puntos: 7 | |
Respuesta: Insertar variable bajo instrucción echo Manuelete:
Ese es un típico error de principiante, fijate lo siguiente:
$valor1 = "ABC"; $valor2=10;
1)puedes hacer esto como ya le dijeron
echo "valor1 = " . $valor1 . " valor2 = " . $valor2;
la salida será : valor1 = ABC valor2 = 10
2) esto
echo "valor1 = $valor1 valor2 = $valor2";
y hará lo mismo que en el caso (1)
3) esto
echo 'valor1 = ' . $valor1 . ' valor2 = ' . $valor2;
el resultado es valor1 = $valor1 valor2 = $valor2.
Esto se debe a que las comillas dobles (") leen el contenido que tienes los valores antecedido por $ (o sea las variables: $valor1 y $valor), pero las comillas simples (') ven cualquier dato como un literal, o sea $valor1 y $valor2)
hay otros casos un poco mas complejos como por ejemplo:
$a['valor1'] = "ABC"; $a['valor2'] = 10;
para el caso de arriba sería
echo "valor1 = ". $a['valor1'] . " valor2 = " . $a['valor2'];
daría el mismo valor del (1);
ahora ve esto
$campo1 = "valor1"; $campo2="valor2";
puedes hacer esto
echo "valor1 = " . $a[$campo1] . " valor2 = " . $a[$campo2];
o así
echo "valor1 = $a[$campo1] . " valor2 = $a[$campo2]";
sería lo mismo
bueno luego hay una mezcla con \ en el caso de las personas que usan siempre comillas dobles (") sobre todo en los array $a["valor1"], yo te recomendaría en este cado que siempre uses comillas simples en lo array para el valor referencias $a['valor1'].
Igualmente te recomendaría algo como esto
caso con html
ejemplo base
<table width="250px" border="2" align="center"> esto va muy bien en html, pero con un echo en php sería así
echo "<table width=\"250px\" border=\"2\" align=\"center\">";
yo siempre lo hago así:
echo "<table width='250px' border='2' align='center'>";
y podría hacer algo así
$width="250px; $border=2; $align = "center";
echo "<table width='$width' border='$border' align='$align'>";
como veraz en este caso con las comillas simples (') no ocurre lo que te explique arriba, ya que se encuentran dentro de un echo abierto con comillas dobles (")
Bueno espero que te sirva saludos |