ちゃんとカテゴリ分けされておりませんので、
記事をお探しならブログ内検索が便利です。
ご活用くださいませー+.(≧∀≦)゚+.゚
ブログ内検索
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
カテゴリー
最新コメント
[11/22 รูปพวงหรีดแสดงความเสียใจ]
[11/22 ดอกไม้ งานศพ]
[11/22 ช่อดอกไม้ตามสั่ง]
[11/22 ร้านดอกไม้บรรยากาศอบอุ่น]
[11/21 Robertret]
最新記事
(08/22)
(02/19)
(01/16)
(12/29)
(12/28)
最新トラックバック
プロフィール
+ハンドル+
y_ayamori(purple)
+職業+
IT系エンジニア
+すまい+
さいたま
y_ayamori(purple)
+職業+
IT系エンジニア
+すまい+
さいたま
普段はオペをしている方がPHPを勉強したいと言って、カレンダーを作っていた。
サンプルにしているソースコードの解釈を手伝っていたのですが、自分で書いたらどうなるだろうと、今回チャレンジしてみました。
つまり、やらなきゃよかったシリーズですね♪
preタグが使えればいいのに・・・
サンプルにしているソースコードの解釈を手伝っていたのですが、自分で書いたらどうなるだろうと、今回チャレンジしてみました。
つまり、やらなきゃよかったシリーズですね♪
preタグが使えればいいのに・・・
<?php
// HTML処理
$site_title = date("Y年m月のカレンダー");
// カレンダー処理
$week_head = array('<font color="red">日</font>', "月", '火', '水', '木', '金' ,'<font color="blue">土</font>');
$first_day = date("Ym") . "01"; // YYYYMMDD形式
$last_day = date("j", strtotime(date("Y") . date("m") + 1 . "00")); // M形式
$last_u_day = strtotime(date("Y") . date("m") + 1 . "00"); // UNIX time
$cal_head_null = date("w", strtotime($first_day));
$count = 0; $day = 1;
while($last_u_day >= mktime(0, 0, 0, date("m"), $day, date("Y"))){
$cal_data[] = "<tr>";
for($i=1; $i<=7; $i++){
if($count < $cal_head_null){
$cal_data[] = "<td></td>";
}elseif($last_day < $day){
$cal_data[] = "<td></td>";
$day++;
}else{
switch(date("w", mktime(0, 0, 0, date("m"), $day, date("Y")))){
case 0:
$cal_data[] = "<td><font color=\"red\">" . $day . "</font></td>";
break;
case 6:
$cal_data[] = "<td><font color=\"blue\">" . $day . "</font></td>";
break;
default:
$cal_data[] = "<td><font color=\"black\">" . $day . "</font></td>";
}
$day++;
}
$count++;
}
$cal_data[] = "</tr>";
}
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<!-- 文字コード指定が簡素に -->
<meta charset="utf-8">
<title><?= $site_title ?></title>
</head>
<body>
<h1><?= $site_title ?></h1>
<table border="1">
<?php
echo "<tr>";
foreach($week_head as $head){
echo "<td>".$head."</td>";
}
echo "</tr>";
foreach($cal_data as $data){
echo $data;
}
?>
</table>
</body>
</html>
// HTML処理
$site_title = date("Y年m月のカレンダー");
// カレンダー処理
$week_head = array('<font color="red">日</font>', "月", '火', '水', '木', '金' ,'<font color="blue">土</font>');
$first_day = date("Ym") . "01"; // YYYYMMDD形式
$last_day = date("j", strtotime(date("Y") . date("m") + 1 . "00")); // M形式
$last_u_day = strtotime(date("Y") . date("m") + 1 . "00"); // UNIX time
$cal_head_null = date("w", strtotime($first_day));
$count = 0; $day = 1;
while($last_u_day >= mktime(0, 0, 0, date("m"), $day, date("Y"))){
$cal_data[] = "<tr>";
for($i=1; $i<=7; $i++){
if($count < $cal_head_null){
$cal_data[] = "<td></td>";
}elseif($last_day < $day){
$cal_data[] = "<td></td>";
$day++;
}else{
switch(date("w", mktime(0, 0, 0, date("m"), $day, date("Y")))){
case 0:
$cal_data[] = "<td><font color=\"red\">" . $day . "</font></td>";
break;
case 6:
$cal_data[] = "<td><font color=\"blue\">" . $day . "</font></td>";
break;
default:
$cal_data[] = "<td><font color=\"black\">" . $day . "</font></td>";
}
$day++;
}
$count++;
}
$cal_data[] = "</tr>";
}
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<!-- 文字コード指定が簡素に -->
<meta charset="utf-8">
<title><?= $site_title ?></title>
</head>
<body>
<h1><?= $site_title ?></h1>
<table border="1">
<?php
echo "<tr>";
foreach($week_head as $head){
echo "<td>".$head."</td>";
}
echo "</tr>";
foreach($cal_data as $data){
echo $data;
}
?>
</table>
</body>
</html>
PR
この記事にコメントする