26日目:PHP学習Ⅰ完了(配列、繰り返し、関数、問い合わせフォーム作成)
<学習日>
26日目
<学習内容>
① PHP Ⅰの学習(34-100%):(配列、繰り返し、関数、問い合わせフォーム作成)
<参考>
Progateレベル:130
<学習内容詳細>
① PHP Ⅰの学習(34-100%):(配列、繰り返し、関数、問い合わせフォーム作成)
昨日に引き続いて、PHP Ⅰの学習を進めて、本日完了させました!
結構ボリューミーだったと思います^^
JavaScriptと被る部分もたくさんある中、違う部分や新しく学んだ内容も多かったので、具体的なcodeと一緒に整理します。
・continue:breakとは違って、完全にループを抜けずに、現在の周だけをスキップする
例えば、1~100まで表示したいけれど、3の倍数だけ抜きたい場合は、下記のようにすればOK。breakで記述すると1と2が表示されて終わる。
for($i=1; $i<=100; $i ++) {
if($i % 3 == 0) {
continue;
}
echo $i.'<br>';
}
・出力する値は.でつなぐ。
例えば、変数+文字列+ブランクで出力したい場合は
echo $変数.'文字列'.'<br>';
と記述する。
・ある変数に関数に指定の値を入れた結果を代入したい場合、戻り値を指定すればいい。
例えば、$areaという変数に、半径7の円の面積を突っ込みたい場合
function getArea($radius) { return $radius * $radius * 3.14;}
$area = getArea(7)
echo $area;
と記述すると、半径7の円の面積が表示される。
・formで指定した場合、メソッド名に紐づく値を、指定のurlに送ることが出来る。
例えば、creat.phpというHTMLフォルダに、index.phpフォルダからinputで作成したフォームに入力された値を送って、その値を反映させたいとする。
(入力後に、入力内容確認画面に入力した内容が反映されるようなページを想定している)
その場合、index.phpフォルダ内で
<form action="create.php" method="post" >
<input type="textarea" name="content">
</form>
のように記述すると、contentというキーに、入力された内容が値として格納されて、create.php側に送信される。
create.php側では、
<?php
echo $_POST['content'];
?>
と記述することで、index.php側でテキストフォーム内に記載された内容をそのまま表示することが出来る。なお、POSTの部分は大文字である必要があるので要注意。
・プルダウンの作り方はselect関数を使う。formと同じように、ここで選んだ値の情報を送付することができる。
例えば、好きな麺類をうどん、そばから選ばせる場合、index.phpのformの中で
<select name="noodle">
<option value="未選択">選択してください</option>
<option value="うどん">うどん</option>
<option value="そば">そば</option>
</select>
のようにすると、noodleというプロパティの中に、選択したものに応じて「value」の値が格納される。つまり、プルダウンで「選択してください」を選んだ状態だと、create.phpのnoodleというプロパティの中には、「未選択」という値が送られるのである。ユーザー側にアクションを求める場合に、使い勝手がよい。
create.phpの中では同様にecho $_POST['noodle'];と記述してあげればよい。
・プルダウンに大量のデータを入れたいときはforeach関数の処理の中に、"<option value='{プロパティ名}'>{プロパティ名}</option>"とすればよい。また、for関数の中にも同じように入れ込める。
例えばプルダウンに30~100までの数字を表示させたい場合は、以下のとおり記述すればOK
<?php
for($i=30; $i<=100; $i++) {
echo "<option value='{$i}'>{$i}</option>";
}?>
今日はこんなところでしょうか^^
HTMLへの挿入の方法についても、<?php ?>だったりと、微妙に言語ごとに違うのが面白いですね。混乱する原因でもありますが、都度都度確認して進めれば問題ないと思います^^
ではでは、1日でも長く続けられるように頑張っていきます^^
同志の方、一緒に頑張っていきましょう!
<補足>
久しぶりの補足です!
PHPっていったい何の略だろうと思って、Google先生に聞いてみました。
すると、以下のようなブログ記事を発見!拝見させていただきました^^
PHPはどうやら、以下のような変遷を経ているようです。
最初:Personal Home Page ToolsでPHP Tools
現在(一般的な解釈):PHP: Hypertext PreprocessorでPHP
現在(公式見解):PHP
つまり、個人的なホームページを作成するツールとして開発され、その役割が拡大し、現在の解釈になった。
ただし、公式見解としては”PHPはPHPであり、それ以上でもそれ以下でもない”とのことみたいです。
頭文字をとったような名前だと、略す前の正式名称というものを求める人が一定数いるから、”PHP: Hypertext PreprocessorでPHP”という解釈も否定はしないけどね、みたいなスタンスかなと思います^^
私みたいのがいるから、ということですね。はい、すみませんでした笑
以上です!