サンプル・プログラムの実行例
サンプル・プログラム
webcolor.php | サンプル・プログラム本体。 |
バージョン | 更新日 | 内容 |
---|---|---|
1.2.0 | 2023/01/08 | 読みやすいように変数名などを見直した |
1.11 | 2020/12/05 | PHP8動作確認 |
1.1 | 2014/07/06 | HTML5対応 |
1.0 | 2004/10/09 | 初版 |
まずはPHPのソースプログラムをダウンロードしてほしい。
解凍できたら、isleap.php というファイル名でWebサーバ Apache の仮想ディレクトリが通っているディレクトリにセーブすること。
例によって、画面に表示している行番号は説明の便宜上のものであり、ソースプログラムには含まれていない。
解凍できたら、isleap.php というファイル名でWebサーバ Apache の仮想ディレクトリが通っているディレクトリにセーブすること。
例によって、画面に表示している行番号は説明の便宜上のものであり、ソースプログラムには含まれていない。
サンプル・プログラムの実行方法
ブラウザから https://localhost/***/webcolor.php (*** はセーブした仮想ディレクトリ名)と入力すると、カラーチャートを表示する。
配列
このプログラムもHTMLとPHPが混在している。セーフカラーの00, 33, 66, 99, CC, FFの6つ組の数字は、このような一覧表にしておきたい。
番号 | 値 |
---|---|
0 | 00 |
1 | 33 |
2 | 66 |
3 | 99 |
4 | CC |
5 | FF |
20: //R・G・B各々の値を格納した配列
21: $colors = array('00', '33', '66', '99', 'CC', 'FF');
for文
23: //カラーチャートを生成する
24: for ($red = 0; $red < count($colors); $red++) {
25: for ($green = 0; $green < count($colors); $green++) {
26: printf("<tr>\n");
27: for ($blue = 0; $blue < count($colors); $blue++) {
28: $code = $colors[$red] . $colors[$green] . $colors[$blue];
29: printf("<td style=\"text-align:center; background-color:#%s;\">%s</td>\n", $code, $code);
30: }
31: printf("</tr>\n");
32: }
33: }
カラーチャートは、HTMLタグの table を使って一定のパターンで並べることにする。このようなケースでは、繰り返しを行う for文を使うことが多い。前にも少し触れたが、for文は for (式1; 式2; 式3) 文 のようにして使い、最初の式 式1 は、ループ開始時に無条件に実行される。
繰り返しの開始時に、 式2 が評価(実行)される。 その式の値が TRUE が場合、ループは継続され、括弧内の 文 が実行される。値が FALSE の場合、ループの実行は終了する。
各繰り返しの後、 式3 が評価(実行)される。ここでは組み込み関数 count を使い、あらかじめ用意した配列の要素数 - 1 を上限としてループを回す。
各式は、空とすることができる。 式2 を空にすることは、無限実行ループを意味する。ここでは、変数$r, $g, $b各々を0から5まで変化させて、それに対応する配列 $col の値からカラーコードを発生させ、セルの背景色としている。
おまけとして、カラーコードを文字として画面に表示させる。
繰り返しの開始時に、 式2 が評価(実行)される。 その式の値が TRUE が場合、ループは継続され、括弧内の 文 が実行される。値が FALSE の場合、ループの実行は終了する。
各繰り返しの後、 式3 が評価(実行)される。ここでは組み込み関数 count を使い、あらかじめ用意した配列の要素数 - 1 を上限としてループを回す。
各式は、空とすることができる。 式2 を空にすることは、無限実行ループを意味する。ここでは、変数$r, $g, $b各々を0から5まで変化させて、それに対応する配列 $col の値からカラーコードを発生させ、セルの背景色としている。
おまけとして、カラーコードを文字として画面に表示させる。
参考サイト
- Web Safeカラー 216色
- PHPと配列の使い方:ぱふぅ家のホームページ
(この項おわり)
Webのカラー表示は #RRGGBB という6桁の16進数で表される。RGB各々を6段階――00, 33, 66, 99, CC, FF――に分割し、6×6×6=計216色の組み合わせを Webセーフカラー と呼んでいる。Webセーフカラーは表示環境に左右されることが少ない。
今回は、Webセーフカラーをカラーチャートとして表示するプログラムをつくってみる。
(2023年1月8日)読みやすいように変数名などを見直した