alienHRNの訓練日記

IT業界初心者で勉強中。

20200914 授業メモ

授業内容

 

 

f:id:alienHRN:20200914140659p:plain

〇ファイルの読み込み
14章 001.phpより

☆require'読み込むファイルパス';→読み込み失敗した時は処理が停止
require_once'読み込むファイルパス';→1回だけ読み込み
☆include'読み込むファイルパス';→読み込み失敗した時でも処理は続行
include_once'読み込むファイルパス';→1回だけ読み込み



〇ファイルの読み込み 本体・パーツファイルについて
・パーツ化のメリット
運用が楽になる。


<?php
// □りじっく部分
// ビューファイルで使用する変数に値を代入する。

$title = '001ページ';
// □ビューファイル
// 今まで同じファイルにHTML部分を記述していたが
// ビューファイル(HTMLメインファイル)
をパーツ化してrequireを使用して読み込む。


var_dump(__DIR__);
include __DIR__ . '/header.php';
require_once __DIR__ . '/parts01.php';
require_once __DIR__ . '/parts01.php';
// ↑onceがつくと同じファイル名は一回しか読み込まなくなる
require_once __DIR__ . '/parts01.php';
require __DIR__ . '/footer.php';

f:id:alienHRN:20200914141416p:plain

 

cookieとは
<?php

// cookieとは
// 閲覧者のブラウザに値を保存する技術
// 有効期限を決めて保存することができるのでPCを切っても値が保存される
// 発行元のサイトの情報を持っているので同じサイトの内であればページをまたいで
// 値を共有できる
// □2回目以降 cookieが届いている場合
// cookie受け取り船用変数「$_COOKIE」が
// 連想配列で受け取る
// 部屋名:クッキー名
// 部屋内にはいる値:クッキーの値



$count = isset($_COOKIE['count']) ? $_COOKIE['count'] + 1 : 1;
// 条件?true時の処理:false時の処理
// 条件:isset($_COOKIE['count'])
// countという名のクッキーはあるか?
// true→$_COOKIE['count']+1
// 受け取ったcookieに+1して変数countに代入
// false→1
// 「1」を変数countに代入
// □初回アクセス時はcookieがないので変数countに「1」を代入
// □2回目以降はクッキーが届いているのでクッキー内の
// 値(前回アクセス数)+1をして変数countに代入

if ($count >= 10) {
  $bool = setcookie('count'$counttime());
else {
  $bool = setcookie('count'$count4);
  // setcookie関数:クッキー発行
  // 第一引数:クッキー名
  // 第二引数:クッキーの値
  // 戻り値:cookie発行準備おkで「true」
  //          cookie発行準備NGで「false」
  // 第三引数(省略可):有効期限
  // 省略時はブラウザが終了するまで
  // 戻り値は「true」「false」
}
echo "<pre>";
echo var_dump($count);
echo "</pre>";
?>
<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>クッキー</title>
</head>

<body>
  <h1>クッキーを使ったカウンター</h1>

  <?php if ($bool) : ?>
    <p>アクセス回数:<?php echo $count?></p>
  <?php else : ?>
    <p>クッキーを発行できませんでした</p>
  <?php endif?>

  <?php if ($count > 5) : ?>
    <p>たくさんアクセスしてくれてありがとう</p>
  <?php endif?>

  <p><a href="01_cookie.php">01_cookie.php</a></p>

</body>

</html>