3 回答
TA贡献1788条经验 获得超4个赞
0 索引为空的原因是因为在这部分中使用preg_splitpreg_split("//",时,第一个参数是/用作分隔符的正则表达式,因此您将字符串拆分为空字符串。
$pattern = "//";
$string = "1//3";
print_r(preg_split($pattern, $string));
输出
Array
(
[0] =>
[1] => 1
[2] => /
[3] => /
[4] => 3
[5] =>
)
如果您想使用 preg_split with/作为分隔符并拆分,//则必须转义正斜杠。
$pattern = "/\/\//";
如果您使用另一个分隔符,例如~模式看起来像
$pattern = "~//~";
正如已经指出的,您可以使用explode代替
$string = "1//3";
print_r(explode("//", $string));
输出
Array
(
[0] => 1
[1] => 3
)
TA贡献1111条经验 获得超0个赞
正如评论中所说,为什么你有 2 个循环?一个就足够了,您不需要拆分字符串:
while($row = $result->fetch_assoc()) {
$sql = "SELECT `Nome`,`Agrupamento` FROM `Users` WHERE `ID`='" . $row["ID"] . "'";
$result2 = $conn->query($sql);
$row2 = $result2->fetch_assoc();
echo($row2["Nome"] . "+" . $row2["Agrupamento"] . "+". $row["Id2"] . "/");
}
此外,您最好使用 JOIN 而不是在循环中执行第二个 SELECT 。我不能说更多,因为我们不知道数据库的架构以及数据库是什么。
- 3 回答
- 0 关注
- 105 浏览
添加回答
举报