gpt4 book ai didi

php - 仅在变量发生变化时打印变量?

转载 作者:行者123 更新时间:2023-11-29 13:35:34 25 4
gpt4 key购买 nike

首先,我的问题有点含糊或令人困惑,因为我不太确定如何用措词来表达我的问题。我正在尝试查询一家针织公司的库存商数据库(使用 PHP 的学校项目),但我希望将城市打印为标题,而不是每个库存商的信息。

这是我目前拥有的:

$sql = "SELECT * FROM mc16korustockists where locale = 'south'";
$result = pg_exec($sql);
$nrows = pg_numrows($result);
print $nrows;
$items = pg_fetch_all($result);
print_r($items);

for ($i=0; $i<$nrows2; $i++) {
print "<h2>";
print $items[$i]['city'];
print "</h2>";

print $items[$i]['name'];
print $items[$i]['address'];
print $items[$i]['city'];
print $items[$i]['phone'];

print "<br />";
print "<br />";

}

我在数据库中查询所有数据,行是 ref、name、address、city 和 phone,然后执行它。查询行数然后使用它来确定循环运行多少次迭代都很好,但我想要的是 h2 标题出现在 for ($i=0;) 行上方。

尝试只会破坏我的页面,所以这可能是不可能的。我想我必须计算“城市”中的条目数,直到它检测到更改然后将标题更改为我认为的那个名称?那或进行大量查询并为每个名称设置一个变量,但在这一点上,我还不如手动进行(我非常怀疑这是否是最佳实践)。哦,我欢迎对我的 PHP 提出任何批评,因为我才刚刚开始。

谢谢,如果您需要更多信息,请尽管询问!

附言正如您在标签中看到的那样,我们类正在使用 PostgreSQL 而不是 MySQL 进行学习。

最佳答案

这将解决您的问题:

$sql = "SELECT * FROM mc16korustockists where locale = 'south' order by city";

...


$city = '';

for ($i=0; $i<$nrows2; $i++) {
if($items[$i]['city']!=$city)
{
print "<h2>";
print $items[$i]['city'];
print "</h2>";
$city = $items[$i]['city'];
}
print $items[$i]['name'];
print $items[$i]['address'];
print $items[$i]['city'];
print $items[$i]['phone'];

print "<br />";
print "<br />";
}

关于php - 仅在变量发生变化时打印变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13130858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com