5月30日 授業内容 (php(print_r,連想配列(foreach,フォーム(input,output),date(P162〜))))

web-design-exercise.hatenablog.jp




print_r

f:id:paris1204:20160530160227p:plain


f:id:paris1204:20160530160335p:plain

<pre>
<?php
$color=array('','','','','','');
print_r($color);

var_dump($color);


?>
</pre>

連想配列
f:id:paris1204:20160530161336p:plain

<pre>
<?php
$sales=array( 'sun' =>10,'mon' =>20,'tue' =>30,'wed' =>40,'thu' =>50,'fri' =>60,'sat' =>70);
echo '土曜日と日曜日の売上合計は,'.($sales['sat'] + $sales['sun']).'です';


?>
</pre>

f:id:paris1204:20160530161616p:plain

<?php
$color=array('','','','','','');

foreach ($color as $v){
echo $v."<br>\n";	
	
	};


?>


フォーム(試験に出る)
array_key_exists

f:id:paris1204:20160530164142p:plain

f:id:paris1204:20160530164603p:plain

f:id:paris1204:20160530173657p:plain

f:id:paris1204:20160530173707p:plain


入力内容(input.php)
f:id:paris1204:20160530171853p:plain

出力内容(output.php)
f:id:paris1204:20160530171934p:plain

input.php

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>英語を日本語に変換(input.php)</title>
</head>

<body>
<form action="output.php" method="post"><!--output.phpにデータを送る-->
<p>次の英語のどれかを入力してください:例(apple,banana,orange,potato,tomato)</p>
<p><input type="text" name="english"></p>
<p><input type="submit" value="変換"></p>
</form>
</body>
</html>

output.php

<?php
if(!isset ($_POST['english'])){//もしinput.phpで入力したenglishのデータが入っていなかったら、
	header('Location:input.php');//inputのheaderに飛ばす(output.phpに直接アクセスするのを防止するため)
	exit;//
	}
	else{$e=array('apple' =>'りんご','banana'=>'バナナ','orange' =>'オレンジ','potato'=>'じゃがいも','tomato'=>'トマト');
$key=htmlspecialchars($_POST[english],ENT_QUOTES,'UTF-8');//input.phpから送られてきたデータを受け取る
}


?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>英語を日本語に変換結果(output.php)</title>
</head>

<body>
<?php
if(array_key_exists($key,$e)){//key:調べる値。array:キーが存在するかどうかを調べたい配列。
	echo '英語'.$key.'は日本語で'.$e[$key].'です。';
	}
	else{
		echo $key.'は登録されていません。';
		}
?>
<p><a href="input.php"><input type="button" value="戻る"></a></p><!--行き止まりを作らないために戻るボタンを用意しておく-->
</body>
</html>

date

f:id:paris1204:20160530183611p:plain

<?php
date_default_timezone_set('Asia/Tokyo');//ロケーション設定

$now =time();//現在時刻を調べる

echo $now;//1970年1月1日の0時からの秒数を出力する(P165)


3日後の日にちを表示する(P169)
f:id:paris1204:20160530184343p:plain

<?php
date_default_timezone_set('Asia/Tokyo');//ロケーション設定


$min=60;
$hours=60*$min;
$day=24*$hours;

$now=time();
$t=$now + 3*$day;//3日後を設定する
echo '現在から3日後は'."<br>\n";
echo date('Y年m月d日',$t);//
$tは現在から3日間の数秒

?>


カウントダウン(P172)