是否可以使用foreach
循环为PHP中的每3列创建引导行,还可以将PHP代码与View部分分离。
这是我的代码
<?php include('connect.php');
$object = "";
$checkTables = $con -> prepare("SELECT * FROM available");
$checkTables -> execute();
$tables = $checkTables->fetchALL(PDO::FETCH_ASSOC);
$i = 0;
foreach($tables as $table):
if($table['avail'] == 0) {
$object .= '<div class="col-sm-4"><div class="table full"><p> 0 seats are avaiable.</p></div></div>';
} else {
$object .= '<div class="col-sm-4"><div id="table_'. $table['id'] .'" class="table"><p>' . $table['avail'] . ' seats are avaiable.</p></div></div>';
}
$i++;
endforeach;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/bootstrap-theme.min.css">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="container-fluid text-center">
<?php echo $object; ?>
</div><!-- End of container -->
<script type="text/javascript" src="js/jquery-2.1.3.min.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
<script type="text/javascript" src="js/main.js"></script>
</body>
</html>
我想像这样将foreach
循环放在我的文件顶部,并将html和php分开。
您可以在每次内部计数器模数3等于0:时添加新行
$object = '<div class="row">';
foreach($tables as $table):
if($table['avail'] == 0) {
$newObject = '<div class="col-sm-4"><div class="table full"><p> 0 seats are avaiable.</p></div></div>';
} else {
$newObject = '<div class="col-sm-4"><div id="table_'. $table['id'] .'" class="table"><p>' . $table['avail'] . ' seats are avaiable.</p></div></div>';
}
$i++;
if($i % 3 === 0) {
// True every time 3 divides into $i evenly
$newObject = $newObject . '</div><div class="row">';
}
$object .= $newObject;
endforeach;
$object .= '</div>';