質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

4回答

462閲覧

PHPでカレンダーを表示させたいのですが・・・

P_Beginner

総合スコア99

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2018/04/17 08:26

PHPでカレンダーを表示したいのですが・・・。
表示形式は
1日(日)
2日(月)
3日(火)
と続くようにしていきます。

これは実際にできました。これを使って、土曜日は青、日曜日は赤の文字で表示したいのですがうまくできません。
色をつける条件として
<span style="color:#ff0000";>~</span>
を使いたいのですがうまくいきません。

表示するだけのプログラム

PHP

1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="utf-8"> 5 <title>ページのタイトル</title> 6</head> 7<body> 8 <h2>2018年4月</h2> 9 <?php 10 ini_set('display_errors',1); //エラー表示 11 12 $year=date("Y"); 13 $month=date("n"); 14 $day=date("j"); 15 $w=date("w"); 16 $lastday=date("t"); 17 18 $wkanji[0]="日"; 19 $wkanji[1]="月"; 20 $wkanji[2]="火"; 21 $wkanji[3]="水"; 22 $wkanji[4]="木"; 23 $wkanji[5]="金"; 24 $wkanji[6]="土"; 25 26 for($d=1;$d<=$lastday;$d++){ 27 $ww=date("w",mktime(0,0,0,$month,$d,$year)); //曜日対応付けの数字を算出 28 $youbi=$wkanji[$ww]; //配列から日本語の曜日に変換 29 echo $d."日(".$youbi.")<br>"; 30 } 31 ?> 32 33</body> 34</html>

実際に考えてみたが、表示できないソース(出力部分のみ)

PHP

1if($ww==0){ 2 echo <span style="red";>$d."日(".$youbi.")<br>"</span>; 3} 4else if($ww==6){ 5 echo <span style="blue";>$d."日(".$youbi.")<br>"</span>; 6} 7else{ 8 echo $d."日(".$youbi.")<br>"; 9}

まだ始めたばかりなので文法も知ったようで理解していない部分があるので、可能な限りわかりやすく教えてくださると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/04/17 08:35

display_errorsをOnにしているのであれば実行している画面にエラーが出力されていると思います。エラーも追記していただければと(あとそのエラーでも調べてみてください)
m.ts10806

2018/04/17 08:35

質問編集画面タイトル横にある「初心者アイコン」をご活用ください。「初心者」と質問で書くよりも伝わります。
P_Beginner

2018/04/17 09:03

display_errorsを書いたのですが、Macのsafariだからかエラー表示される時とされない時があります。原因によるんでしょうかね?
m.ts10806

2018/04/17 12:11

サーバー側の言語であるため、エラー出力にブラウザは関係ありません。単にエラー対象のコードかどうかです
guest

回答4

0

echoなどPHP命令の途中にある場合には、HTMLタグも文字列として扱う必要があります。

php

1 // 他のも同様に 2 echo '<span style="color:red";>'.$d."日(".$youbi.")<br></span>";

投稿2018/04/17 08:28

編集2018/04/17 08:29
maisumakun

総合スコア145183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

style="red";
↓↓↓
style="color:red";

PHP

1$year=date("Y"); 2$month=date("n"); 3echo "<h2>{$year}{$month}月</h2>\n"; 4 5$day=date("j"); 6$lastday=date("t"); 7 8$wkanji=["日","月","火","水","木","金","土"]; 9 10for($d=1;$d<=$lastday;$d++){ 11 $w=date("w",mktime(0,0,0,$month,$d,$year)); 12 $youbi=$wkanji[$w]; 13 $dd=$d."日(".$youbi.")"; 14 if($w==0) $dd="<span style='color:red'>{$dd}</span>"; 15 if($w==6) $dd="<span style='color:blue'>{$dd}</span>"; 16 print "{$dd}<br>"; 17} 18

投稿2018/04/17 08:38

編集2018/04/17 08:39
yambejp

総合スコア114757

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

phpではなくcssの使い方ではないでしょうか
文字色は color です。

投稿2018/04/17 08:29

m.ts10806

総合スコア80848

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Take it easy.

PHP

1for($d = 1; $d <= $lastday; $d++) 2{ 3 $ww = date("w", mktime(0, 0, 0, $month, $d, $year)); //曜日対応付けの数字を算出 4 $youbi = $wkanji[$ww]; //配列から日本語の曜日に変換 5 echo "<span class='day_of_week_{$ww}'>{$d}日({$youbi})</span><br>"; 6}

HTML

1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="utf-8"> 5 <title>ページのタイトル</title> 6 7<style> 8span.day_of_week_0 { color: red; } /* Sunday */ 9span.day_of_week_6 { color: blue; } /* Saturday */ 10</style> 11 12</head> 13<body> 14  :

Addition:

When you want to emphasize the day 5, 10, 15, 20, 25 and last day of the month, you could write code using multiple classes those are separated with whitespace like below.

PHP

1for($d = 1; $d <= $lastday; $d++) 2{ 3 $ww = date("w", mktime(0, 0, 0, $month, $d, $year)); //曜日対応付けの数字を算出 4 $youbi = $wkanji[$ww]; //配列から日本語の曜日に変換 5 $go_toh_bi = ($d % 5 == 0 || $d == $lastday)? "go_toh_bi " : ""; 6 echo "<span class='{$go_toh_bi}day_of_week_{$ww}'>{$d}日({$youbi})</span><br>"; 7}

HTML

1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="utf-8"> 5 <title>ページのタイトル</title> 6 7<style> 8span.day_of_week_0 { color: red; } /* Sunday */ 9span.day_of_week_6 { color: blue; } /* Saturday */ 10span.go_toh_bi { font-weight: bold; } /* go toh bi */ 11</style> 12 13</head> 14<body> 15  :

This case study will teach us that the computer programming code will be more simpler when using some classes than not using it.

投稿2018/04/17 12:31

編集2018/04/17 12:56
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問