PHPまとめ課題(1) - Webデザイン初心者の勉強 | Web勉強法
基礎
if文
* 変数varに代入された数値に応じて以下のようなメッセージを表示させなさい
* 数値が偶数だった場合:「変数varに代入された値は、偶数です。」
* 数値が奇数だった場合:「変数varに代入された値は、奇数です。」
<?php $var = i; if( $var % 2 == 0 ){ print '変数varに代入された値は、偶数です。'; } else { print '変数varに代入された値は、奇数です。'; } ?>
if文
* $var1と$var2に代入された数値に応じて以下のようなメッセージを表示させなさい
* 2つの値は同じ数値です。
* $var1より$var2のほうが大きい値です。
* $var1より$var2のほうが小さい値です。
<?php $var1 = i; $var2 = j; if( $var1 == $var2 ){ print '2つの値は同じ数値です。'; } if( $var1 < $var2 ){ print '$var1より$var2のほうが大きい値です。'; } else if( $var1 > $var2 ) { print '$var1より$var2のほうが小さい値です。'; } ?>
switch文
* 変数varに代入された数値が「1または2または3」の場合、以下のようなメッセージを表示させなさい
* 数値が「1」だった場合:「変数varに代入された値は、1です。」
* 数値が「2」だった場合:「変数varに代入された値は、2です。」
* 数値が「3」だった場合:「変数varに代入された値は、3です。」
<?php $var = i; switch( $var ){ case 1: print '変数varに代入された値は、1です。'; break; case 2: print '変数varに代入された値は、2です。'; break; case 3: print '変数varに代入された値は、3です。'; default: print ' 1~3以外が入力されました '; } ?>
for文
* ブラウザに以下のように表示されるよう記述しなさい。
* for文を使用
<?php for( $i=1; $i<4; $i++ ){ print 'TEST'.$i.'<br>'; } for( $j=1; $j<4; $j++ ){ print 'PASS'.$j.'<br>'; } print 'ループが終了しました。'; ?>
for文
* ブラウザに以下のように表示されるよう記述しなさい。
* for文を使用
<?php print ' 《1〜10までの偶数を出力》<br> '; for( $i=1; $i*2<=10; $i++ ){ print $i*2 .'<br>'; } print 'ループが終了しました。'; ?>
【先生の回答】
<?php print ' 《1〜10までの偶数を出力》<br> '; for( $i=2; $i<=10; $i += 2 ){ print $i .'<br>'; } print 'ループが終了しました。'; ?>
配列(値の合計)
* $tensu = array ( 70, 55, 80, 95, 60 );
* 合計点を、for文、foreach文、array_sum関数を使ってそれぞれ求めなさい
【for文】
<?php $tensu = array( 70, 55, 80, 95, 60 ); $sum = 0; for( $i = 0; $i < count($tensu); $i++ ) { $sum += $tensu[$i]; } print 'テストの合計点数は、'.$sum.'点です'; ?>
【foreach文】
<?php $tensu = array( 70, 55, 80, 95, 60 ); $sum = 0; foreach( $tensu as $value ) { $sum += $value; } print 'テストの合計点数は、'.$sum.'点です'; ?>
【array_sum文】
<?php $tensu = array( 70, 55, 80, 95, 60 ); print array_sum( $tensu ); ?>
配列(値の最高値)
* $tensu = array ( 70, 55, 80, 95, 60 );
* ブラウザに最高値を表示するように記述しなさい。
<?php $tensu = array( 70, 55, 80, 95, 60 ); print 'テストの最高点数は'.max( $tensu ).'点です'; ?>
配列(値の取得)
* ブラウザに以下のように表示されるよう記述しなさい。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>フォームのデータを配列で受け取る</title> </head> <body> <form method="POST" action="output.php"> <table> <tr> <td> <input type="checkbox" name="check1[]" value="音楽">音楽 <input type="checkbox" name="check1[]" value="旅行">旅行 <input type="checkbox" name="check1[]" value="スポーツ">スポーツ <input type="checkbox" name="check1[]" value="映画">映画 </td> </tr> <tr> <td> <input type="submit" value="送信" name="sub1"> </td> </tr> </table> </form> </body> </html>
【output.php】
<?php for( $i = 0; $i < count($_POST[ 'check1' ]); $i++ ){ print htmlspecialchars($_POST[ 'check1' ][$i], ENT_QUOTES) . '、'; } print 'が選択されました。<br>'; ?>
簡易計算機(足し算)
* 以下のように表示するPHPを記述しなさい
【index.php】
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <form action="get.php" method="get"> <input type="text" id="num1" name="num1" size="20px" maxlength="20px"> + <input type="text" id="num2" name="num2" size="20px" maxlength="20px"> = ? <br> <input type="submit" name="submit" value="計算"> </form> </body> </html>
【get.php】
<?php $a = htmlspecialchars( $_GET['num1'], ENT_QUOTES, 'UTF-8' ); $b = htmlspecialchars( $_GET['num2'], ENT_QUOTES, 'UTF-8' ); $c = $a + $b; print'計算結果は、'.'<br>'; print $a.'+'.$b.'='; print $c; ?>
最小値を求める
* ブラウザに以下のように表示されるよう記述しなさい。
【index.php】
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>フォームのデータを配列で受け取る</title> </head> <body> <form method="POST" action="result_mini.php"> 数値A:<input type="text" name="num1" ><br> 数値B:<input type="text" name="num2" ><br> <input type="submit" value="送信"> </form> </body> </html>
【result_mini.php】……functionを使う場合( if文でやることも可能 )
<?php $ans = mini( $_POST[ 'num1' ], $_POST[ 'num2' ] ); print ' 2つの数値の比較では、最小値は '. $ans . 'です。<br>'; function mini ( $funcNum1, $funcNum2 ) { if( $funcNum1 < $funcNum2 ) return $funcNum1; else return $funcNum2; } ?>