我需要一个明确的解释。
看一下代码
<?php
$user_id = $_GET['user_id'];
include "../database.php";
$query="SELECT name FROM user WHERE user_id='$user_id'";
$result=mysqli_query ($connect, $query);
while($data = mysqli_fetch_array ($result))
{
$name=$data['name'];
echo"<tr><td>$name</td></tr>";
}
?>
当我换成这个时,代码仍然有效。 。
echo"<tr><td>".$data['name']."</td></tr>";
但是,当我改变这个时,它就无法工作了。
echo"<tr><td>$data['name']</td></tr>";
我使用"
和.
的方式吗?
答案 0 :(得分:5)
你也可以把它写成
echo "<tr><td>{$data['name']}</td></tr>";
或
echo "<tr><td>$data[name]</td></tr>";
或(有趣的事实并没有太多人知道):
echo '<tr><td>', $data['name'], '</td></tr>';
这只是PHP的语法。阅读official site上的字符串。
.
用于连接。双引号支持“插值”,但您必须正确使用它。如果你想访问数组索引,可以在变量周围添加{}
,或者删除'
(我认为只有一级深度)。
最后一种语法对于echo来说是特殊的。 echo
不是一个函数,所以它们不是真正的“参数”,但它会让你通过用逗号分隔它们来输出多个东西。