while文の使い方

while文を使うと、このような繰り返し処理を組み立てることができます。繰り返す処理を{ }に記述し、ループを抜けるためのコドを()に記述する点は、for文と同じです。ただし、while文の( )ではループカウンタが使えません。では、どのようなタイミングでループを終了するのでしょうか。while文は、簡単に言えば「問題がなければループを続ける」という構文です。 while文によるループ処理 「問題がなければ」についてもう少し説明します。プログラミング用語を使って説明すると、while文は、( )がtrueの間は処理を続けるという構文です。(   )がfalseになった時点でルプを終了します。簡単に言えば、(  )に「ルプを続けていいですか?」と書かれていて、その答え(「はい」または「いいえ」)に応じてループを続けるか終了するかが決定するのです。 while文の構造 while (ここがtrueの聞はループを続ける)  { } 急に「trueの聞は処理を続ける」という表現が出てきたので、while文のループが終了するタイミングが、今ひとつピンとこないかもしれません。月末日を過ぎたらwhile文を抜ける例でイメージすると、( )に次のような条件を記述して、うまくループを抜けるように処理を書きます。 月末日まで表示して終了するwhile文のイメージ ループ開始時点はtrueだった「あるもの」が、途中でfalseになったのでwhile文を抜けるという動作です。ところで、なぜ、「過ぎていますか?」ではなく「過ぎていませんよね?」のようなまわりくどい質問にするのかは、後でわかるので気にしないでください。ここでは、質問の答えが「いいえ」(false)になった時点でwhile文を抜けるということだけを意識して、先に進みましょう。  

1回だけ書いてコピーするという発想

面倒な作業はl回で済ませるという発想がプログラミング上達のコツです。あいさつの例でも、l回だけ「こんにちは!」と書いておき、それをコピーして使うことができれば、何度も使いたいときに便利です。 1枚だけ手書きしてコピーして使う こうすれば、手書きという面倒な作業は1回だけで済みます。「こんにちは!」が「こんばんは!」になっても、直すのは手書きの1枚だけです。何枚も手書きのあいさつを修正するのに比べれば、作業が楽なことがわかるでしょう。 このような仕組みがあれば便利 紙に「こんにちは!Jと書く その紙をコピーする その紙をコピーする その紙をコピーする さて、この「こんにちは!」と書いた紙をコピーするときに、どこにその紙があるのかわかるように、箱に入れておいた方が良いでしょう。あいさつを書いた紙も箱に入れておきましょう。箱に入れたあいさつをコピーして使うイメージは次のようになります。 コピーして使うあいさつを箱に入れる 「こんにちは!」と書いた紙を箱に入れる 箱に入った紙をコピーする 箱に入った紙をコピーする 箱に入った紙をコピーする “箱”のような仕組みを使えば、あちこちで何度も同じ言葉を使う処理が効率的に記述できることはイメージできたでしょうか。

文字列中の HTMLのタグを無効化する

掲示板などでは、フォームで入力された文字列を、 Web ブラウザに表示します。 ただし、その文字列の中に HTMLのタグが含まれていると、好ましくないことが起 こる場合があります。 たとえば、アダルト画像を表示する<IMG> タグを入れられた場合、それが掲示板に表示されると、掲示板のイメージが悪化するということが考えられます。このようなことから、掲示板ではHTMLのタグを使用できなくすることがよくあります。 そのためには、文字列中のHTMLのタグを無効化する必要があります。 その処理を行う関数として、 htmlspecialcharsがあります。書き方は次の通り です。 htmlspecialchars (対象の文字抑) この関数は、次の処理を行って、 HTMLのタグが動作しないようにします。置換 後の文字列が値として返され、元の文字列は変化しません。

1つの HTML ファイルに PHP の部分を複数入れる

1つの HTML ファイルの中には PHP の部分 (<?php ~?>の部分)が1 つしかありませんでした。しかし、 PHP の部分を複数箇所入れることも可能です。たとえば、「ページのほとんどは固定の内容で、数箇所だけ PHPを使用して動的に内容を変化させたいというような場合、それぞれの部分に <?php ~?>のタグを入れて処理を書けばOK です。

PHPスクリプ卜の作成と実行の基礎

PHPスクリプ卜の作成と実行の基礎は下記のチェックで確認しましょう。プログラミンクがはじめての人は、 覚えることが沢山です。プログラミングには、こんなに規則があるのかと。PHPの記述の規則は、決して厳密ではありません。他の言語に比べれば、規則に慣れるまで の時間は少なくて済むはずです。1つでもプログラム言語を学んでおけば、他の言語にも 応用できます。頑張りまし ょう。  PHPスクリプトを記述するときの規則を理解している  関数の意昧を理解し、また利用することができる PHPスクリ プ トでの文字列の記述方法を理解している 文字列を結合することができる define で定数を定義することができる

プログラミング用語集

PHP入門者の方がつまづきがちポイントとして、プログラミングには専門用語が多い!ということがあるかと思います。PHP入門者のうちは、自分用の備忘録をつくり、わからなくなったら見返すという習慣をつけるとよいでしょう。ここにも、よく使われる用語の一部をあげておきます。 ・スクリプト…プログラム言語の一種であり、PHPはスクリプトになります。入門者であるうちは、プログラムは大規模なもの、スクリプトは規模が小さい代わりに扱いやすいというくらいのイメージでよいかと思います。 ・変数…プログラムの中で、ある値や内容を、一時的に保管したいということがよくあります。そんなとき、一時的にそれを記憶させておけるものが変数です。たとえば、「int a」と書くと、そこにint型の箱ができます。「int a=5」とすれば、その箱に5という値を保管したことになります。この保管することを「代入」と呼ぶので一緒に覚えておくとよいでしょう。 ・関数(ファンクション)…「画面に文字を表示する」「ファイルを保存する」などの処理内容の記述を、関数、またはファンクションといいます。 ・引数…たとえば「画面に文字を表示する」という関数だった場合、「なんという文字を表示するか」の部分が引数に当たります。PHPでは、関数の後の()の中に記述します。 ・戻り値…関数によって得られる結果のことを、戻り値といいます。

if 文の基本型

一連の処理の中では、条件が成立するかどうかによって、その後の処理を変える こともよくあります。このようなことを行うにはif やswitchという文を使用します。まず、条件が1つだけの基本的な if 文から説明しましょう。条件の部分には、条件を判断するための式を入れます。条件式では 2つの値を比較します。なお、比較に使用する記号のことを比較演 算子と呼ぴます。

フォームを作成する

フォームを使用してデータを入力するには、まずWebページ上にフォームを作成することから始めます。フォームはHTMLファイル上では「<FORM>~</FORM>」タグで囲みます。タグに詳しければ、もちろんHTMLファイルに自分でタグを入力しても良いでしょう。しかしながら、ホームページ作成ソフトを使用すれば、フォームの見た目を画面で確認しながらフォームを作成できるので、それらを使用すると便利です。タグに詳しければ、もちろんHTMLファイルに自分でタグを入力しでもかまいません。しかし、ホームページ作成ソフトを使用すれば、フォームの見た目を画面で 確認しながらフォームを作成できるので、それらを使用すると便利です。フォームで「送信」ボタンをクリックすると、 <FORM>タグの actionで指定したスクリプトが実行されます。その中で、フォームで入力されたデータを読み取って、必要な処理を行います。 入力されたデータは、スクリプトには変数として渡されます。それぞれの部品に は名前を付けましたが、それと閉じ名前の変数が自動的に作成され、フォームで入力された値が代入されます。その変数を通してデータを処理して行くのです。

日付や時刻を処理する関数 

PHPには多数の関数がありますが、日付や時刻を処理するための関数はいくつかあります。現在の時刻を得るには「time」という関数を使用します。time関数には因数はありません。たとえば、$nowtime=time();という文を実行すると、変数nowtimeに現在の時刻が代入されます。時刻は「UNIXタイムスタンプを日付/時刻情報に分解します。UNIX タイムスタンプは秒単位の値なので、日付や時刻に変換しないと通常はわ かりにくいです。日付や時刻に変換する関数としては、getdateがあります。引数 としてタイムスタンプを与えると、それらを年/月/日/曜日/時/分/秒に分割 して連想配列に格納し、それを戻り値として返します。引数を省略すると、現在の時刻を与 えたものとして動作します。 たとえば、秒(seconds)、分(minutes)、時(hours)、曜日(wday)、月(mon)、年(year)、その年の1月1日からの経過日数(yaday)、曜日を英単語で表したもの(weekday)、月を英単語で表したもの(month)など、様々な種類があります。