50回目授業内容 プレゼン終わってからの新しい授業〜PHP〜脱線

[授業][Dreamweaver][JavaScript]

php.ini」の設定

  • 「default_charset」を「UTF-8」に
  • 「mbstring」
    • 「language = japanese」
    • 「internal_encoding = UTF-8

PHP

  • 「\n」の必然性
    • コーダーとしてHTMLに吐き出されたソースを綺麗に見えるようにする。

PHPを打ってみよう

  • print
<?php
print '<h1>PHPの練習</h1>' . "\n";
print '<p>はじめてのPHP</p>' . "\n";
print '<p>PHPを始めましょう!</p>' . "\n";
?>
  • サーバーの時刻を表示しよう
<?php
print '現在は、' . date('G時 i分 s秒') . 'です。' . "\n";
?>

文字列リテラル・数値リテラル

  • here documentを出力する
<?php
print <<< PAGE
<ul>
<li>WordPress</li>
<li>Joomla</li>
<li>EC-Cube</li>
</ul>
PAGE;
?>
<?php
print '<ul>' . "\n";
print '<li>10進数の10は';
print 10;
print '</li>' . "\n";
print '<li>8進数の10は';
print 010;
print '</li>' . "\n";
print '<li>16進数の10は';
print 0x10;
print '</li>' . "\n";
print '<li>16進数のFは';
print 0xF;
print '</li>' . "\n";
print '</ul>' . "\n";
?>
  • escape sequence
<?php
 printf('<table>');
  print "\n";
 printf ('<tr><td>10進整数</td><td>%d</td></tr>','18');
  print "\n";
 printf ('<tr><td>2進整数</td><td>%b</td></tr>','18');
  print "\n";
 printf ('<tr><td>8進整数</td><td>%o</td></tr>','18');
  print "\n";
 printf ('<tr><td>16進整数</td><td>%x</td></tr>','18');
  print "\n";
 printf ('<tr><td>浮動小数点数(3桁)</td><td>%.3f</td></tr>','3.14');
  print "\n";
 printf ('<tr><td>浮動小数点数(6桁)</td><td>%.6f</td></tr>','3.14');
  print "\n";
 printf ('<tr><td>文字列</td><td>%s</td></tr>','Hello');
  print "\n";
 printf('</table>');
?>

変数

  • 変数に値を代入(assignment)する
<?php
$product = '鉛筆';
print ($product);
print ('販売しています。' . "\n");
?>

-変数に格納したあいさつを表示する
>|php|
<?php
$message = 'こんにちは';
echo $message;
echo $message;
echo $message;
?>
  • 変数に格納した値を変更する
<?php
$product = '鉛筆';
print $product;
print ('を販売しています。' . "<br>\n");
$product = '消しゴム';
print $product;
print ('を販売しています。');
?>
<?php
$a = 'こんにちは';
$b = 'こんばんわ';
echo $b;
?>
  • 変数に対する処理の違い
<?php
$name = '山本';
echo $name . 'さん、こんにちは';
?>
  • 文字列に変数を埋め込む
<?php
$product = '消しゴム';
echo 'このお店では、' . $product . 'を販売しています。';
?>
<?php
$tanka = 300;
$kazu = 10;
$nebiki = 500;
$total = $tanka*$kazu-$nebiki;
echo '合計金額は' . $total . '円です。';
?>
  • 結合代入演算子
    • 変数の後に新たな文字列を継ぎ足しできる演算子
<?php
$temp = '山本さん';
$temp = $temp . 'こんにちは。';
$temp = $temp . '今日は月曜日です。';
echo $temp;
?>
  • 変数を演算する
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>変数を演算する</title>
<style type="text/css">
<!--
table {
  width: 300px;
  border-collapse: collapse;
}
th {
  background-color: #CCC;
}
th,td {
  padding: 6px;
}
-->

</style>
</head>

<body>
<?php
$product = '消しゴム';
$num = 10;
$price = 50;

$total = $num * $price;
$total = $total - 100;
?>

<table border="1">
<tr><th>内容</th><th>金額</th></tr>
<?php
echo '<tr><td>品名</td><td>' . $product . '</td></tr>' . "\n";
echo '<tr><td>品名</td><td>' . $price . '円</td></tr>' . "\n";
echo '<tr><td>品名</td><td>' . $num . '個</td></tr>' . "\n";
echo '<tr><td>品名</td><td>' . $total . '円(但100円引)</td></tr>' . "\n";
?>
</table>
</body>
</html>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>変数を演算する</title>
<style type="text/css">
<!--
table {
  width: 300px;
  border-collapse: collapse;
}
th {
  background-color: #CCC;
}
th,td {
  padding: 6px;
}
-->
</style>
</head>

<body>
<?php
$num1 = 10;
$num2 = 5;
$num3 = $num1+$num2;
$num4 = $num1-$num2;
$num5 = $num1*$num2;
$num6 = $num1/$num2;
$num7 = $num1%$num2;
?>
<table border="2">
<tr><th>項目</th><th>結果</th></tr>
<?php
print '<tr><td>' . '\$num1' . '</td><td>' . $num1 . '</td></tr>' . "\n";
 print ("<tr><td>\$num2</td><td>{$num2}</td></tr>\n");
 print ("<tr><td>\$num1+\$num2</td><td>{$num3}</td></tr>\n");
 print ("<tr><td>\$num1-\$num2</td><td>{$num4}</td></tr>\n");
 print ("<tr><td>\$num1*\$num2</td><td>{$num5}</td></tr>\n");
 print ("<tr><td>\$num1/\$num2</td><td>{$num6}</td></tr>\n");
 print ("<tr><td>\$num1%\$num2</td><td>{$num7}</td></tr>\n");
?>
</table>
</body>
</html>
    • printのカッコ無しに変換してみました。どちらでも表示可能です。

脱線話(復活)

  • php結構おもしろいかも!

四十路男Tokiyoの人生再スタートblogもやってます。