PHP-PDO echo$array[';name';];它不起作用了
我无法实现从数组中回显关联值 这是我的PHP代码:PHP-PDO echo$array[';name';];它不起作用了,php,mysql,arrays,pdo,echo,Php,Mysql,Arrays,Pdo,Echo,我无法实现从数组中回显关联值 这是我的PHP代码: <?php $servername = "my host name"; $username = "my username"; $password = "my password"; $database = "my database"; try { $conn = new PDO("mysql:host=$servername;dbname=$database", $username,
<?php
$servername = "my host name";
$username = "my username";
$password = "my password";
$database = "my database";
try {
$conn = new PDO("mysql:host=$servername;dbname=$database", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT Street, Number, City, Country FROM extralocal");
$stmt->execute();
} catch (PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>
<?php
$places = array();
while ($place = $stmt->fetchAll(PDO::FETCH_ASSOC)) {
$places[] = $place;
}
foreach ($places as $place) {
echo $places['Street'];
echo $places['Number'];
echo $places['City'];
echo $places['Country'];
}
?>
由于某种原因,当我在foreach
循环中从array
返回每个值时,加载的页面上不会显示任何内容,甚至不会显示错误。但是,如果我var_dump
数组我可以看到值在那里,因此我假设DB连接工作正常,并且正确获得了值。只是我不能回应具体的值
任何帮助都将不胜感激。
提前谢谢
foreach ($places as $place) {
echo $places['Street'];
echo $places['Number'];
echo $places['City'];
echo $places['Country'];
}
取而代之
foreach ($places as $place) {
echo $place['Street'];
echo $place['Number'];
echo $place['City'];
echo $place['Country'];
}
在while循环中使用fetch
而不是fetchAll
希望它能解决您的问题替换$places['Street'];按$place[“Street”]@波里亚,没什么,结果一样。无错误。您希望在while循环中使用fetch
而不是fetchAll
。否则,您将在一个子阵列中存储所有结果@Poria,实际上你的建议也是对的,因为用$places代替$place是不正确的。再次感谢。@Rizier123,我不知道如何投票支持这两个答案,因为它们都是正确的,或者我就这样离开了?谢谢你的反馈,但不幸的是它没有起作用:(好的,在我按照@Rizier123在评论中的建议修复了问题之后,我还发现这是我代码中的另一个问题。谢谢!