我有一个 PHP while 循环,它从 SQL 数据库中提取数据并在一个包含两列的表中显示内容。
// Check Connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// Select Data Table
$result = mysqli_query($con,"SELECT * FROM Recommendations") or die(mysqli_error);
// Split Data
$mid = ceil(mysqli_num_rows($result)/2);
// Display Content
while ($rows = mysqli_fetch_array($result)) {
$Name = $rows['Name'];
$Author = $rows['Author'];
$Cover = $rows['Link to Cover'];
$Link = $rows['Link to Profile'];
echo "<table><tr><td>
<a href='" . $Link . "' >".$Name."</a>
<br />".
$Author.
"<br />
<a href='" . $Link . "' ><img src='" . $Cover . "' /></a>
</td>
<td>
<a href='" . $Link . "' >".$Name."</a>
<br />".
$Author.
"<br />
<a href='" . $Link . "' ><img src='" . $Cover . "' /></a>
</td></tr></table>";
}
?>
我希望能够在两列中并排显示循环结果。
ex. 1 2
3 4
5 6
我曾尝试使用伪类在不同的表格列中仅显示偶数和奇数结果,但老实说,我不知道该怎么做。我是 PHP 的新手,如果结果真的很明显,我深表歉意。提前致谢!
最佳答案
我将向您展示一个简单的选项来拆分偶数和奇数。
foreach($numbers as $n) {
($n % 2 == 0) ? array_push($e, $n): array_push($o, $n);
}
上面是一个short-hand ternary operator (?:
)
上述函数将检查数字是偶数还是奇数。它将偶数/奇数值存储在它们自己单独的数组中,在本例中为 $e
为偶数和 $o
/strong> 为奇数。
如果您想了解它是如何工作的,Check this Example Out.
使用上面的例子,你会做这样的事情(AS PSEUDO CODE)
WHILE(ROW = MYSQL.FETCH(DATA)) {
MYDATA[] = ROW;
}
// now we do presentation
FOREACH(MYDATA AS ITEM) {
IF(ITEM.NUMBER % 2 == 0) {
PRINT EVEN.INFORMATION;
} ELSE {
PRINT ODD.INFORMATION;
}
}
关于php - 显示偶数和奇数 SQL 结果 (PHP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25151293/