PHP generate football schedule
ในโค้ดตัวอย่างด้านล่างนี้ จะเป็นการวนลูป for อยู่ด้วยกันทั้งหมด 3 รอบ
for ครั้งที่ 1 กำหนดให้นับแค่ 2 ในลูปแรกจะเป็นทีมเหย้า ในลูปที่สองจะเป็นทีมเยือน
for ครั้งที่ 2 จะนับตามจำนวนทีม ในตัวอย่างมี 8 ทีมก็จะนับจนกว่าจะครบ 8 ทีม
for ครั้งที่ 3 จะนับตามจำนวนทีมคู่แข่ง ในตัวอย่างมี 8 ทีม ก็จะพบคู่แข่งอีก 7 ทีม (ซึ่งพบกัน 2 ครั้ง เหย้า-เยือน ก็จะเท่ากับ 14 ครั้ง)
ข้อสังเกต
เมื่อขึ้น Day 9 จะมีการสลับเอาทีมเยือนขึ้นมาเป็นทีมเหย้า Team 2 จึงเป็นเจ้าบ้านรับการมาเยือนของ Team 1 แทน สำหรับโค้ดที่ใช้เป็นตัวอย่าง มีดังต่อไปนี้
[PHP CODE]
<?php
$teams = array(
'Team 1',
'Team 2',
'Team 3',
'Team 4',
'Team 5',
'Team 6',
'Team 7',
'Team 8'
);
$team_logo[0] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-15-512.png';
$team_logo[1] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-16-512.png';
$team_logo[2] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-25-512.png';
$team_logo[3] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-23-128.png';
$team_logo[4] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-37-128.png';
$team_logo[5] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-12-128.png';
$team_logo[6] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-29-128.png';
$team_logo[7] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-01-128.png';
?>
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<title>PHP ตารางการแข่งขัน</title>
<style>
.games-schedule{
margin : auto;
float : none;
}
.games-schedule .well {
background-color: #fafbfc;
border: 1px #e7e7e7 solid;
border-top: 2px #1761a6 solid;
border-radius: 0px;
padding: 0 10px 0 10px;
}
.games-schedule .col-md-2 {
padding: 5px;
}
.games-schedule-title {
background-color: #1761a6;
color: #ffffff;
padding: 5px;
margin-bottom: 10px;
}
.games-schedule-title h5 {
font-size: 18px;
text-align: center;
margin: 3px 0 3px 0;
}
.games-schedule-items {
padding: 5px;
margin-bottom: 15px;
}
.last-item {
margin-bottom: 0px;
}
.games-team {
margin-bottom: 12px;
}
.games-team h4 {
color: #59a1e8;
text-align: center;
margin-top: 20px;
border: 1px #c8d8e7 dotted;
padding: 5px;
width: 100%;
}
.games-team img {
border-bottom: 2px #6b9fd3 solid;
margin-bottom: 3px;
}
.games-team span {
color: #de6c10;
font-size: 16px;
}
.games-dash {
border: none;
border-top: 1px #95b3d0 dotted;
}
.games-info p {
margin: 0;
padding: 0;
color: #0a2948;
line-height: 20px;
}
.games-schedule-footer {
background-color: #1761a6;
color: #ffffff;
font-size: 13px;
padding: 5px;
}
.games-schedule-footer p {
margin: 0;
}
.schedule-day{
border : 1px solid #ccc;
}
</style>
</head>
<body>
<br/>
<div class="container text-center">
<h3>PHP ตารางการแข่งขัน</h3>
<div class="row">
<div class="col-md-12 games-schedule">
<div class="well">
<?php
$count_of_teams = count($teams);
//แบบแข่งต่อเนื่อง 2 วันพัก ถัดไปทีละทีม
$c=1;
for($count_match=0;$count_match<2;$count_match++){ //home/away
for($i=1;$i<$count_of_teams;$i++){ //move teams
echo '<div class="col-md-4 schedule-day">';
echo '<div class="col-md-12 games-schedule-title">
<div class="row">
<div class="col-md-12">
<h5>DAY '.$c++.' Games</h5>
</div>
</div>
</div>';
for($a=0;$a<$count_of_teams;$a++){ //all teams are playing
$b = ($a+$i)%$count_of_teams;
if($count_match == 0){
$teamLeft = $teams[$a];
$teamRight = $teams[$b];
$teamLeftLogo = $team_logo[$a];
$teamRightLogo = $team_logo[$b];
}else{
$teamLeft = $teams[$b];
$teamRight = $teams[$a];
$teamLeftLogo = $team_logo[$b];
$teamRightLogo = $team_logo[$a];
}
echo '<div class="games-schedule-items">
<div class="row games-team">
<div class="col-md-5 text-center">
<img width="128" src="'. $teamLeftLogo .'" alt="'.$teamLeft.'">
<span>'.$teamLeft.'</span> [Home]
</div>
<div class="col-md-2">
<h4 class="img-circle">VS</h4>
</div>
<div class="col-md-5 text-center">
<img width="128" src="'. $teamRightLogo .'" alt="'.$teamRight.'">
<span>'.$teamRight.'</span> [Visitor]
</div>
</div>
</div>';
}
echo '</div>';
}
}
?>
</div>
</div>
</div>
</div>
<pre>
<blockquote>
<b>Reference</b>
PHP generate football schedule
https://stackoverflow.com/questions/25742569/php-generate-football-schedule
https://bootsnipp.com/snippets/featured/games-schedule
https://www.iconfinder.com/iconsets/pokemon-go/
</blockquote>
</pre>
</body>
</html>
ผลลัพธ์ที่ได้ก็จะเป็นดังนี้
ระบบบริหารจัดการทีมบาสเกตบอล ด้วย PHP & MySQL
http://blog.phpcodemania.com/2020/07/basketball-management-system.html
http://blog.phpcodemania.com/2020/07/basketball-management-system.html
ความคิดเห็น
แสดงความคิดเห็น