PHP入門編3 #04~#06
#04
<select name="age">
<?php
$i = 1;
while($i <=50){
echo "<option>".$i."才</option>";
$i++;
}
?>
<select>
これで
1才から50才まで選択できるプルダウン式のボックスが完成する
#05
for文の書き方、公式
for(初期化式;条件式;変化式){
繰り返し実行する処理
}
for($i = 1; $i <=20; $i++){
echo $i."\n";
これで
1
2
3
~
と続くループ文が作れる
演習課題難しかった
#06
<?php
for($year = 1989; $year <= 2015; $year++){
$heisei = $year - 1988;
echo "西暦".$year."年は平成".$heisei."年です。\n";
}
?>
西暦1989年は平成1年です。
西暦1990年は平成2年です。
西暦1991年は平成3年です。
西暦1992年は平成4年です。
~~
となる
PHP入門編3 #01~#03
PHP入門編3
#01
特になし
#02
$input = fgets(STDIN);
echo "標準入力値:".$input."\n";
fgets(STDIN)
は、データの読み込みをする関数
$input = trim(fgets(STDIN));
trim関数は、いらないスペースなどを除く関数。文字列の先頭及び末尾にあるもの
#03
while(ループをする時の条件式){
繰り返し実行する処理
}
具体例
<?php
$i = 1;
while($i <=10){
echo $i."\n";
$i++;
}
?>
これで、$iが10以上になるまで1ずつたしてループする
11になったらプログラムのループを止める
無限ループには気を付ける
このあたりからだんだん演習課題がスムーズに解けなくなる
PHP入門編2 #02~#06
#02 IF文条件分岐
<?php
// if文による条件分岐
$n = 2;
if($n == 1){
// 条件式が成り立ったときの処理
echo "好き";
}elseif($n == 2){
echo "どちらとも言えない";
}else{
// 条件が成り立たなかったときの処理
echo "嫌い";
}
?>
これで条件分岐のIF文が完成する
一応公式
if(条件式){
// 条件式1を満たした場合に実行される処理
}elseif(条件式2){
// 条件式1を満たさず、条件式2を満たした場合に実行される処理
}elseif{
// 条件式1、2を満たさなかった場合に実行される処理
}
この回の演習問題はちょうど良いレベルで、良い練習になった。繰り返しやる価値があると思う
#03 比較演算子
例文
<?php
// 比較演算子
// == > < >= <= !=
$hour = 11;
if($hour < 12){
echo "午前中";
}
?>
$hourが12より下なら「午前中」と出す
この回の演習問題も良問と感じた
#04
<?php
// おみくじを作る
// 比較演算子 == > < >= <= !=
$omikuji = 4;
if($omikuji == 1){
echo "大吉";
}
elseif($omikuji == 2){
echo "中吉";
}elseif($omikuji <= 4){
echo "小吉";
}
?>
}elseif($omikuji <= 4){
echo "小吉";
ここで、4以下ってことは1、2、3も小吉になるんじゃないの?
って思ったが、その上で1と2の処理は完成しているので、この場合は「4以下」ということになる。
#05
echo "スライムに".$hit."のダメージを与えた!";
文章中に代入演算子を入れる時の、ドットの位置とダブルコーテーションの位置を確認する
#06
$year = date("Y");
date(“Y”)
date(ダブルコーテーション Y ダブルコーテーション)
で、その日を出力する
パイザラーニング PHP入門編1#06 ~ 2#01
#06
echo rand(1,6);
これで、
「最小1、最大6の中からランダムの数字を出力しろ」という命令になる
echo rand(最小、最大)
<?php
// Here your code !
$rand_rm = rand(1,60);
echo "サイコロの値は".$rand_rm."です。";
?>
これで数字の部分を代入にしておいて、綺麗な文章が出力される
#07
代入演算子はイコール、=
文字列はダブルコーテーションが必要だが、数字はダブルコーテーションいらない
ex)
$a = “テキスト、文字列”;
$b = 1
$aは文字列なのでダブルコーテーションがいるが
$bは数字なので、ダブルコーテーションがいらない
代入演算子は+ - * /のこと
ex)
echo 3+2;
echo 3*2;
$b = 4;
echo $b*2;
こういう風に、ダラー*2 など、計算式の途中にも代入演算子を使うことができる
echo (1+2) * 3;
こういうカッコつきの計算も普通にできる
この回の演習問題4で、値に1を足す を、+1でやっており、模範回答の++ではなかったことでつまづいた。
#08
// $apple リンゴの値段
// $apple_num リンゴを買う数
$apple = 350;
$apple_num = 5;
echo "りんごの値段: ".$apple."円";
これで、りんごの値段 と 円 が表示されて、その間に代入演算子 $appleをドットで囲んで表示させている
改行は「バックッスラッシュとn」
\n
マックの場合は「option+円マーク(¥)」でOK
$apple = 350;
$apple_num = 5;
echo "りんごの値段: ".$apple."円\n";
echo "りんごを買う数:".$apple_num. "個\n";
echo "合計" .$total. "円です。";
↓
りんごの値段: 350円
りんごを買う数:5個
合計1750円です。
PHP入門編2
#01 IF文による条件分岐
まずは軽く公式チェック
if(条件式){条件式が成り立った時の処理}
こういう形になる
以下のは見やすさ的に改行してるからちょっと公式と違うけど、
これでも実行は可能である
ポイント:カッコの締めとか、書き忘れをしないこと
$n = 1;
if($n == 1){
echo "好き";
}
if($n == 1)
これで$nが1だったとき という文が作れる
== はイコールであること を示す
この式は
「もし$nが1だった場合、好き という文字を出力する
というif文になっている。
そして
if ( ) { }
else
{
式
}
とすると、elseのあとに、if文が成り立たなかった場合、つまり偽だった場合の処理が作れる
ex)
$n = 2;
if($n == 1){
echo "好き";
}
else
{
echo "嫌い";
}
$nが1だったら、好き
1以外だったら、嫌い
演習問題1で少してこづる
パイザラーニング PHP入門 #01~#05
-PHP入門編1#02
セミコロンがないと、PHPではその行が終わったことにならないから、セミコロンを忘れないこと
間違いあるある
・セミコロンがコロンになっている
・echoのあとが全角になっていたりする。半角でないとx
#03
//でメモ書きになる
複数行メモ書きにするときは
/*
コメント
*/
で可能
#04
echo で文字出力
<b>テキスト</b> で太文字になる
#05
$output 変数
<?php
// Here your code !
$output = "hello world";
echo $output
?>
これは、
$output = "hello world"; 右辺が左辺へ代入
echo $output $outputを書きだしている
という意味になる
echo $output1.$output2;
これでも両方出力される
間に ドット が入るとより短く美しい文となる
この回の演習問題4で若干てこづった。問題内容はミス発見・修正で、
解答はダブルコーテーションが1つ抜けてるだけのものだった。
こういった細かいミスが目立つ。気をつけなければならない。
テスト投稿
テスト投稿です