Microsoft PowerPoint - PHP入門教材.ppt [互換モード]



Similar documents
JavaScript演習

2016 年 度 情 報 リテラシー 三 科 目 合 計 の 算 出 関 数 を 用 いて 各 教 科 の 平 均 点 と 最 高 点 を 求 めることにする この2つの 計 算 は [ホーム]タブのコマ ンドにも 用 意 されているが 今 回 は 関 数 として 作 成 する まず 表 に 三 科

<4D F736F F D20819C486F70658F6F93588ED297708AC7979D89E696CA837D836A B E A2E646F63>

続 に 基 づく 一 般 競 争 ( 指 名 競 争 ) 参 加 資 格 の 再 認 定 を 受 けていること ) c) 会 社 更 生 法 に 基 づき 更 生 手 続 開 始 の 申 立 てがなされている 者 又 は 民 事 再 生 法 に 基 づき 再 生 手 続 開 始 の 申 立 てがなさ

TIPS - 棚 割 りを 開 始 するまで Liteを 起 動 し 企 業 情 報 の 追 加 を 行 い 棚 割 を 行 う 企 業 の 追 加 をして 下 さい 企 業 情 報 の 追 加 時 に エラーメッセージが 表 示 された 場 合 別 途 TIPS トラブルが 発 生 した 場 合

WEB版「新・相続対策マスター」(ご利用の手引き)

C.1 共 有 フォルダ 接 続 操 作 の 概 要 アクセスが 許 可 されている 研 究 データ 交 換 システムの 個 人 用 共 有 フォルダまたは メーリングリストの 共 有 フォルダに 接 続 して フォルダを 作 成 したり ファイル をアップロードまたはダウンロードしたりすることがで

Microsoft Word - 第3章.doc

KINGSOFT Office 2016 動 作 環 境 対 応 日 本 語 版 版 共 通 利 用 上 記 動 作 以 上 以 上 空 容 量 以 上 他 接 続 環 境 推 奨 必 要 2

養 老 保 険 の 減 額 払 済 保 険 への 変 更 1. 設 例 会 社 が 役 員 を 被 保 険 者 とし 死 亡 保 険 金 及 び 満 期 保 険 金 のいずれも 会 社 を 受 取 人 とする 養 老 保 険 に 加 入 してい る 場 合 を 解 説 します 資 金 繰 りの 都

■デザイン

目 次. WEB メールへのログイン.... メール 送 信 手 順.... メール 受 信 手 順 アドレス 帳 の 操 作 手 順 フォルダーの 操 作 手 順 メール 発 信 者 登 録 署 名 登 録 手 順 基 本 的 な 設 定

3. 選 任 固 定 資 産 評 価 員 は 固 定 資 産 の 評 価 に 関 する 知 識 及 び 経 験 を 有 する 者 のうちから 市 町 村 長 が 当 該 市 町 村 の 議 会 の 同 意 を 得 て 選 任 する 二 以 上 の 市 町 村 の 長 は 当 該 市 町 村 の 議

計算式の取り扱い

内 容 1. はじめに メールのログイン 初 めてのログイン メールの 受 信 / 送 信 メールの 受 信 メールの 作 成 と 送 信 メールの 新 規 作 成 メー

GRIDY SFA カスタム 項 目 操 作 ガイド 用 本 書 はに 必 要 な 操 作 を 解 説 しております は GRIDY SFA ののことです GRIDY SFA へ 申 し 込 み 最 初 に 登 録 を 行 った 方 がそのままとなります カスタム 項 目 はの 方 のみ 操 作 可

弁護士報酬規定(抜粋)

2 研 究 資 源 共 通 化 統 合 検 索 システムソフトウェア 利 用 者 用 マニュアル(ゲートウェイシステム) 目 次 1. はじめに 主 な 利 用 の 流 れ 検 索 検 索 画 面 検 索 画 面 の 設 定...

< 目 次 > 8. 雇 用 保 険 高 年 齢 雇 用 継 続 給 付 27 ( 育 児 休 業 給 付 介 護 休 業 給 付 ) 8.1 高 年 齢 雇 用 継 続 給 付 画 面 のマイナンバー 設 定 高 年 齢 雇 用 継 続 給 付 の 電 子 申 請 高

1.2. ご 利 用 環 境 推 奨 ブラウザ Internet Explorer Google Chrome(バージョン 32 時 点 で 動 作 確 認 済 み) Mozilla Firefox(バージョン 26 時 点 で 動 作 確 認 済 み) Safari 7

スライド 1

R4財務対応障害一覧

Microsoft Word - FBE3A91F.doc

2 / 11 ページ 第 5 講 ビジネスメールの 作 法 Active! Mail を 起 動 し ログインしておきましょう 5-1 ビジネスメールのルールとマナー ビジネスメールのルールとマナーを 確 認 しましょう 宛 先 やCC BCCを 使 い 分 ける 本 文 の 内 容 が 一 目 で

1. 前 払 式 支 払 手 段 サーバ 型 の 前 払 式 支 払 手 段 に 関 する 利 用 者 保 護 等 発 行 者 があらかじめ 利 用 者 から 資 金 を 受 け 取 り 財 サービスを 受 ける 際 の 支 払 手 段 として 前 払 式 支 払 手 段 が 発 行 される 場 合

目 次 1. Web メールのご 利 用 について Web メール 画 面 のフロー 図 Web メールへのアクセス ログイン 画 面 ログイン 後 (メール 一 覧 画 面 ) 画 面 共 通 項 目

4 応 募 者 向 けメニュー 画 面 が 表 示 されます 応 募 者 向 けメニュー 画 面 で [ 交 付 内 定 時 の 手 続 を 行 う] [ 交 付 決 定 後 の 手 続 を 行 う]をクリックします 10

Microsoft PowerPoint - 基金制度

目 次 ログイン 方 法... 3 基 本 画 面 構 成... 4 メールサービス... 5 メールサービス 画 面 構 成... 5 アカウント 詳 細 / 設 定... 6 高 機 能 フィルター... 7 ユーザーフィルター 設 定... 8 新 規 フィルターの 追 加... 8 My ホ

1

6. 共 有 等 に 係 る 固 定 資 産 の 判 定 3 共 有 に 係 る 固 定 資 産 については それぞれの 共 有 者 が 他 に 固 定 資 産 を 所 有 している 場 合 であっても その 資 産 とは 別 個 に 共 有 されている 固 定 資 産 を 別 の 人 格 が 所

2 課 題 管 理 ( 科 学 研 究 費 補 助 金 ) 画 面 が 表 示 されます 補 助 事 業 期 間 終 了 後 欄 の[ 入 力 ] をクリックします [ 入 力 ]ボタンが 表 示 されていない 場 合 には 所 属 する 研 究 機 関 の 事 務 局 等 へお 問 い 合 わせく

改 定 履 歴 改 訂 日 改 訂 理 由 及 び 内 容 承 認 者 確 認 者 改 訂 者 05/8/7 新 版 発 行 05/0/5 推 奨 動 作 環 境 を 追 記

ユーザーマニュアル

<4D F736F F D F B B838082F090DD927582B782E995FB96405F E646F6378>

kyoukai.indd

d_cj01

Microsoft PowerPoint - c3_op-manual.pdf

新 生産管理システム ご提案書 2002年10月15日 ムラテック情報システム株式会社

WEBメールシステム 操作手順書

地域ポータルサイト「こむねっと ひろしま」

メール 受 信 画 面 のレイアウトを 変 更 することができます ここでは 初 期 設 定 のレイアウトで 表 示 されているボタ ンやマークについて 解 説 します メール 一 覧 画 面 には 受 信 したメールが 一 覧 表 示 されます メール 受 信 タブをクリックすると 受 信 箱 フ

<4D F736F F D C97F195CF8AB DEC90E096BE8F912091E6312E313294C52E646F63>

入 札 参 加 資 格 申 請 システム 操 作 マニュアル 入 札 参 加 資 格 の 資 格 有 効 ( 変 更 ) 日 を 迎 えると 追 加 届 の 登 録 ができるようになります ( 入 札 参 加 資 格 申 請 の 定 時 受 付 では いずれかの 申 請 先 団 体 から 入 札 参

データベースS 演習資料

1 書 誌 作 成 機 能 (NACSIS-CAT)の 軽 量 化 合 理 化 電 子 情 報 資 源 への 適 切 な 対 応 のための 資 源 ( 人 的 資 源,システム 資 源, 経 費 を 含 む) の 確 保 のために, 書 誌 作 成 と 書 誌 管 理 作 業 の 軽 量 化 を 図

DN6(R04).vin

MetaMoJi ClassRoom/ゼミナール 授業実施ガイド

■ディレクトリ

Microsoft PowerPoint _リビジョンアップ案内_最終.pptx

スライド 1

富士山チェックリスト

<4D F736F F D2090C389AA8CA72D92F18F6F2D D F ED28CFC82AF91808DEC837D836A B E838B A815B816A2E646F6378>

Microsoft Word - WBT(PP応用編).docx

PATENTBOY/Netバージョンアップ説明書(Ver.1.92)

「給与・年金の方」からの確定申告書作成編

経 理 上 くん db(version 8.001)の 変 更 点 概 要 Ⅰ. 消 費 税 /リバースチャージ 方 式 の 申 告 に 対 応 1 特 定 課 税 仕 入 特 定 課 税 仕 入 返 還 区 分 を 追 加 しました Ⅱ.その 他 の 改 良 修 正 詳 細 は 後 述 を 参 照

税金読本(8-5)特定口座と確定申告

Taro-2220(修正).jtd

2 科 学 研 究 費 助 成 事 業 のトップページ 画 面 が 表 示 されます [ 研 究 者 ログイン]をクリック します 掲 載 している 画 面 は 例 示 です 随 時 変 更 されます 3 科 研 費 電 子 申 請 システムの 応 募 者 ログイン 画 面 が 表 示 されます e

この 章 では 電 子 入 札 システムをご 利 用 いただくための 事 前 準 備 について 説 明 します 事 前 準 備 と して ID 初 期 パスワードの 確 認 初 期 パスワード 初 期 見 積 用 暗 証 番 号 の 変 更 IC カード 登 録 またはICカード 更 新 を 行 っ

SPARQL Finder設置方法

PowerPoint プレゼンテーション

JavaScript( 言 語 )とは 情 報 システムのプログラミング ソースコード 記 述, 外 部 ファイル 保 存, コンパイル,テスト,デバッグ... 大 変 な 作 業 もっと 手 軽 なプログラミング 特 別 な 言 語 処 理 系 は 不 要! Webブラウザだけで 実 行 可 能

Taro-1-14A記載例.jtd

PDF閲覧制限システムLight版体験版マニュアル

<4D F736F F D20819C B78AFA95DB91538C7689E68DEC90AC289

text

第一部【証券情報】

目 次 必 ずお 読 みください 接 続 方 法 WEB ブラウザ 操 作 方 法 閲 覧 用 PC で 直 接 ZERO 本 体 と 接 続 する 場 合 各 ページについて 発 電 状 況 画 面 表 示... 3

本 操 作 説 明 書 について 本 操 作 説 明 書 は 物 品 電 子 調 達 システム 入 札 参 加 資 格 審 査 申 請 についての 操 作 を 説 明 したものです 動 作 環 境 本 アプリケーションは 以 下 の 環 境 にて 動 作 致 します OS 日 本 語 Microso

SchITコモンズ【活用編】

V-CUBE One

BizDataBank とは インターネット 上 (クラウド)に 大 切 なデータを 保 存 することが 出 来 る 便 利 なアプリケーション (オンラインストレージ)です 本 資 料 について BizDataBank サービスは マイナーバージョンアップ 等 もあるため 実 際 のクライアントと

スライド 0


(6) 事 務 局 職 場 積 立 NISAの 運 営 に 係 る 以 下 の 事 務 等 を 担 当 する 事 業 主 等 の 組 織 ( 当 該 事 務 を 代 行 する 組 織 を 含 む )をいう イ 利 用 者 からの 諸 届 出 受 付 事 務 ロ 利 用 者 への 諸 連 絡 事 務

「1 所得税及び復興特別所得税の確定申告書データをお持ちの方」からの更正の請求書・修正申告書作成編

サーバサイドスクリプトPHPを実感しよう

( 別 紙 ) 以 下 法 とあるのは 改 正 法 第 5 条 の 規 定 による 改 正 後 の 健 康 保 険 法 を 指 す ( 施 行 期 日 は 平 成 28 年 4 月 1 日 ) 1. 標 準 報 酬 月 額 の 等 級 区 分 の 追 加 について 問 1 法 改 正 により 追 加

スライド 1

Microsoft PowerPoint - webサイト更新マニュアル ppt [互換モード]

Untitled

スライド 1


Office 10 パッケージ版「リンク集」

ーがサーバーにファイルをアップロードしたり ファイルを 電 子 メールで 送 信 したために) 利 用 できるようになった 場 合 手 動 で 転 送 されたこれらのファイルにアクセスするユーザーまたはデバイスに CAL は 必 要 ありません 以 下 の 例 では 特 定 の 製 品 について 説

<4D F736F F D203193FA8AD45F95CA8E86325F89898F4B315F94F093EF8AA98D AD97DF914F82CC8FEE95F182CC8EFB8F C28E8B89BB2E646F63>

機 能 概 要 概 要 平 成 24 年 度 シームレスな 地 域 連 携 医 療 の 実 現 実 証 事 業 に 対 応 するため 地 域 連 携 システム( 能 登 北 部 版 )を 構 築 する 機 能 < 機 能 追 加 変 更 一 覧 > 1. 画 像 連 携 機 能 院 内 で 撮 影

PowerPoint プレゼンテーション


目 論 見 書 補 完 書 面 ( 投 資 信 託 ) <コード 8027> 当 ファンドに 係 る 当 社 は ファンドの 販 売 会 社 として 募 集 の 取 扱 いおよび 販 売 等 に 関 する 事 務 を 行 います 金 融 商 品 取 引 契 約 の 概 要 当 社 が 行 う 金 融

情報処理技能検定試験 表計算2級 手順書

もくじ はじめに 本 書 はスマートフォンやタブレットのアプリ LINE の 設 定 を 行 うためのマニュアルとなります 詳 しい 操 作 方 法 については メーカーホームページ 上 の 基 本 的 な 使 い 方 を 参 照 ください LINE 基 本 的 な 使 い 方

付 録 B Wiki を 閲 覧 編 集 する B.1 Wiki を 閲 覧 する Web ブラウザのアドレス 欄 に 公 開 されている 個 人 用 Wiki の URL またはメーリ ングリストの Wiki の URL を 入 力 すると その Wiki を 閲 覧 編 集 することができ ます

損 益 計 算 書 自. 平 成 26 年 4 月 1 日 至. 平 成 27 年 3 月 31 日 科 目 内 訳 金 額 千 円 千 円 営 業 収 益 6,167,402 委 託 者 報 酬 4,328,295 運 用 受 託 報 酬 1,839,106 営 業 費 用 3,911,389 一

設定フロー ★印は必須の設定です

<4D F736F F D208CA990CF96BE8DD78F918EAE82CC95CF8D >

03_主要処理画面.xlsx

研究者情報データベース

Transcription:

PHP 入 門 コネクト 株 式 会 社

アジェンダ Webの 基 礎 知 識 開 発 環 境 PHPに 触 れてみよう PHPの 基 本 変 数 と 型 演 算 子 制 御 構 造 と 関 数 データのやりとり オブジェクト 指 向 基 礎 知 識 抽 象 クラス インターフェイス 例 外 データベース 基 礎 知 識 SQL PDO セキュリティ # 2

Webの 基 礎 知 識 これからPHPを 学 ぶ 前 に まずはWebについて 復 習 しましょう

Webの 基 礎 知 識 Webの 仕 組 み クライアントサーバモデルに 基 づくシステム クライアント 送 信 HTTP 要 求 サーバ 受 信 受 信 応 答 送 信 ウェブブラウザにURLが 入 力 される(もしくは 外 部 リンクがクリックされる) DNSによってURLがIPアドレスに 変 換 され URIのスキーム に 従 い 接 続 される ( 主 にHTTPで 接 続 ) ページを 構 成 するファイルが 要 求 元 に 送 られる 受 信 側 (クライアント)は 受 け 取 ったファイルにしたがってページを 生 成 し 表 示 を 行 う # 4

Webの 基 礎 知 識 Webアプリケーションとは? ウェブの 機 能 や 特 徴 を 利 用 したアプリケーション PHPやRubyといったWebサーバ 上 で 動 作 するス クリプト 言 語 を 利 用 して 開 発 することが 多 い 動 的 にコンテンツを 生 成 サーバ~クライアント 間 をHTTPで 通 信 具 体 的 には ブログ SNS 掲 示 板 オンラインショップ WIKI オークション etc # 5

Webの 基 礎 知 識 用 語 解 説 :HTML (HyperText Markup Language ) ウェブ 上 のドキュメントを 記 述 するための マークアップ 言 語 他 のドキュメントへのハイパーリンクを 設 定 できるハイパーテキストで 画 像 リス ト 表 などの 高 度 な 表 現 力 を 持 つ W3Cによる 標 準 規 格 であるが 最 近 では 後 継 規 格 であるXHTMLへの 置 き 換 えが 進 められている # 6

Webの 基 礎 知 識 用 語 解 説 :PHP (PHP: Hypertext Preprocessor ) 動 的 にHTMLデータを 生 成 することが 可 能 サーバ~クライアント 間 でデータの 受 け 渡 しを 行 う Apache IISなどWebサーバ 上 で 動 作 する フレームワークやライブラリが 多 数 存 在 CGI FastCGI サーバのモジュールとして 動 作 可 能 イスラエルのZend Technologies 社 が コアエンジンを 開 発 # 7

Webの 基 礎 知 識 PHPはスクリプト 言 語 である インタプリタ 方 式 実 行 する 度 にオペコード( 機 械 語 )に 変 換 コンパイル 処 理 が 不 要 Zend Engineが 自 動 的 にコンパイル スクリプトをサーバに 配 置 するだけ Try & Errorが 容 易 プログラムを 作 成 / 変 更 してから 実 行 するまでの 手 間 がなく 開 発 者 にとって 利 便 性 が 高 い # 8

Webの 基 礎 知 識 用 語 解 説 :CGI Common Gateway Interfaceの 略 サーバプログラムと 外 部 プログラムとの 連 携 法 の 取 り 決 め 様 々な 言 語 に 対 応 PHP/Perl/Java/Python/Ruby/C etc mod_php mod_perl Java ServletはCGIとは 仕 組 みが 違 う # 9

Webの 基 礎 知 識 用 語 解 説 :HTTP HyperText Transfer Protocolの 略 Webサーバとクライアントとの 間 で 通 信 を 行 う 際 に 用 いるプロトコル HTML XMLで 記 述 されたハイパーテク ストの 転 送 が 主 な 目 的 だが 画 像 動 画 な ど 様 々なデータの 転 送 に 用 いられる 状 態 保 持 の 為 の 機 構 であるCookieを 使 用 可 能 # 10

Webの 基 礎 知 識 用 語 解 説 :HTTPS HTTP + Secure 暗 号 化 する 事 でセキュア( 安 全 )な 状 態 にする SSL (Secure Socket Layer)で 暗 号 化 サーバの 認 証 と 通 信 の 暗 号 化 により 安 全 性 を 確 保 復 元 のための 解 析 に 膨 大 な 時 間 を 要 するため 事 実 上 は 解 析 しても 徒 労 に 終 わる # 11

クライアントサイドスクリプト クライアント 側 動 的 コンテンツの 仕 組 み Java ScriptなどWebブラウザで 動 作 するス クリプト Webブラウザ Java Script 送 信 ajax 要 求 応 答 サーバ 受 信 ページ 全 体 は WebサーバよりWebブラウザに 送 られる Java Scriptで 記 述 された 部 分 が 操 作 に 応 じて 動 作 する 一 部 のデータをサーバ 側 にデータを 要 求 するときはajaxで 通 信 を 行 う Webページ 全 体 を 遷 移 する 場 合 には 通 常 のhttpリクエストを 送 る # 12

モバイルアプリ モバイルの 仕 組 み ネイティブアプリとWebサーバの 連 携 ネイティブアプリ 送 信 HTTP 要 求 サーバ 受 信 受 信 応 答 送 信 ネイティブアプリは クライアント(スマホ/タブレット)にダウンロードされている ネイティブアプリが Webサーバからデータを 取 り 出 す 際 には httpdリクエストを 送 信 する ネイティブアプリは サーバからのレスポンスを 受 け 取 り 処 理 を 行 う # 13

PHPに 触 れてみよう PHPに 慣 れ 親 しむためにも まずは 学 習 の 前 に 実 際 にPHPを 触 ってみましょう 誰 でも 簡 単 にプログラミングできる 言 語 だという 事 を 肌 で 感 じて 下 さい

PHPに 触 れてみよう 次 のスクリプトを 実 行 してみましょう Zend Studioのローカルデバッグ 機 能 を 使 って 試 してみましょう [F5]キーで 編 集 中 のスクリプトを 実 行 できます <?PHP phpinfo();?> # 15

PHPに 触 れてみよう このような 画 面 になりましたか? アウトプット 領 域 上 の[HTML]タブをクリック すると HTMLタグ 表 示 から 切 り 替 わります # 16

PHPに 触 れてみよう 次 のスクリプトを 実 行 してみましょう <?PHP print "こんにちは 世 界!";?> # 17

PHPに 触 れてみよう このような 画 面 になりましたか? 結 果 が 表 示 されましたか? # 18

PHPに 触 れてみよう まずはプログラムを 動 かしてみよう! プログラムを 実 行 し 結 果 を 見 ることが 学 習 の 近 道 です 全 ての 機 能 を 憶 える 必 要 はありません Zend Studioで 手 軽 にPHPを 楽 しもう! デバッグ 機 能 など 一 般 的 なエディタにはない 便 利 な 機 能 が 充 実 しています ネット 環 境 が 無 い 状 態 でも 学 習 出 来 ます Let s enjoy PHP programming! # 19

PHPを 記 述 する 上 で 基 本 となるルール 文 法 を 学 習 します

基 本 ルール 基 本 ルール <?php と?> で 囲 われたブロックがPHP スクリプトとして 認 識 される HTMLファイルの 中 に 埋 め 込 む 形 でも 記 述 可 能 ファイル 保 存 時 に 拡 張 子 は.php とする <html> <head><title>step1</title></head><body> <?php //(ここにPHPのコードを 記 述 します) print hello world! ;?> </body> </html> # 21

基 本 ルール コメントの 書 式 // の 後 に 記 述 する <?php //ここにコメントを 記 述 print //この 場 合 は ;?> 複 数 行 の 場 合 は /* ~ */ で 囲 う <?php /* 途 中 で 改 行 を 入 れても OK! */?> # 22

演 習 PHPの 基 本 基 本 ルール 以 下 のコードを 入 力 し Zend Studioで 実 行 して みましょう <html> <title>step2</title> <body> <table border="1"> <tr> <?php print "<td>1+1</td>";?> <td> = </td> <td> <?php print(1+1);?> </td> </tr> </table> </body> </html> # 23

変 数 と 型 変 数 とは イメージは なんでも 入 れられる 便 利 な 箱 実 際 は 変 数 を 宣 言 することにより PCのメモリ 上 に 値 を 保 持 しするための 領 域 を 作 る 文 字 列 配 列 オブジェクト 数 値 変 数 画 像 # 24

変 数 と 型 変 数 の 使 いかた $ ではじめる 使 える 文 字 は 英 数 字 アンダースコアのみ 頭 に 数 字 は 使 えない 例 : $var $var_01 $1_var OK OK NG # 25

変 数 と 型 型 の 種 類 文 字 列 (string) 整 数 (int) 浮 動 小 数 点 (float) 論 理 型 (boolean) 配 列 型 (array) オブジェクト 型 (object) リソース 型 (resource) ヌル 型 (null) PHPは 型 を 意 識 しなくても 記 述 できる 言 語 ですが 型 の 概 念 を 知 っておくことはとても 重 要 です # 26

変 数 と 型 文 字 列 型 (string) 文 字 の 集 合 体 を 表 現 する 変 数 0 文 字 以 上 の 文 字 列 を 格 納 シングルクォートによる 記 述 エスケープできるのは 引 用 符 と マークのみ $zend = 'zend is PHP company'; $php = 'PHP is 'scripting language ' '; $name = 'my name is zeev suraski '; # 27

変 数 と 型 ダブルクォートによる 記 述 エスケープシーケンスが 利 用 可 能 変 数 が 有 効 になる $a = "a n tb n t tc"; $b = "$a nd"; ヒアドキュメントによる 記 述 エスケープシークエンス 一 覧 \n 改 行 \r 復 行 \t 水 平 タブ \\ 円 マーク \$ ドル 記 号 \" 二 重 引 用 符 <<<EOD ~ EOD までの 間 を 文 字 列 として 認 識 $str = <<<EOD これが ヒアドキュメント です EOD; # 28

変 数 と 型 整 数 型 (int) 32ビット 符 号 付 き 整 数 を 表 現 する 変 数 代 入 可 能 な 値 : -2147483648~2147483647 $a = 100;// 10 進 数 $a = 0765;// 8 進 数 0を 付 けると8 進 数 として 扱 われる $a = 0xff;// 16 進 数 0xを 付 けると16 進 数 として 扱 われる $a = 2147483647; //+1して 下 記 実 行 結 果 の 変 化 を 見 る var_dump($a); # 29

変 数 と 型 浮 動 小 数 点 型 (float) 次 のケースで 使 用 する 整 数 の 上 限 以 上 の 値 小 数 点 以 下 の 値 を 扱 う 時 $a = 1.2; $a = 1.2e3;// 1.2 x 1000 $a = 1.2e-3;// 1.2 x 0.001 # 30

変 数 と 型 配 列 型 (array) 配 列 とは 複 数 の 値 を 持 つことが 出 来 る 変 数 値 にユニークなインデックスを 付 けることができる イメージとしては 配 列 このようなスプレッドシートのデータ 構 造 をそのまま 格 納 することができる # 31

変 数 と 型 実 際 に 値 を 格 納 してみましょう 変 数 名 [] = 値 変 数 名 = array( 値 1, 値 2, ) $gv9[] = ' 柴 田 '; $gv9[] = ' 土 井 '; $gv9[] = ' 王 '; $gv9[] = ' 長 嶋 '; $gv9[] = ' 末 次 '; $gv9[] = ' 高 田 '; $gv9[] = ' 黒 江 '; $gv9[] = ' 森 '; $gv9[] = ' 高 橋 '; print_r($gv9); $gv9 = array(' 柴 田 ',' 土 井 ',' 王 ', ' 長 嶋 ',' 末 次 ',' 高 田 ',' 黒 江 ',' 森 ',' 高 橋 '); print_r($gv9); # 32

変 数 と 型 連 想 配 列 キー に 文 字 列 を 指 定 したもの 変 数 名 [キー] = 値 変 数 名 = array(キー => 値 1, ) $gv9[' 中 '] = ' 柴 田 '; $gv9[' 二 '] = ' 土 井 '; $gv9[' 一 '] = ' 王 '; $gv9[' 三 '] = ' 長 嶋 '; $gv9[' 右 '] = ' 末 次 '; $gv9[' 左 '] = ' 高 田 '; $gv9[' 遊 '] = ' 黒 江 '; $gv9[' 捕 '] = ' 森 '; $gv9[' 投 '] = ' 高 橋 '; print_r($gv9); $gv9 = array( ' 中 ' => ' 柴 田 ', ' 二 ' => ' 土 井 ', ' 一 ' => ' 王 ', ' 三 ' => ' 長 嶋 ', ' 右 ' => ' 末 次 ', ' 左 ' => ' 高 田 ', ' 遊 ' => ' 黒 江 ', ' 捕 ' => ' 森 ', ' 投 ' => ' 高 橋 ' ); print_r($gv9); # 33

変 数 と 型 論 理 型 (boolean) 真 偽 を 表 現 する 型 TRUE: 真 FALSE: 偽 比 較 演 算 子 の 結 果 は 全 て 論 理 型 $a = true; print $a. " n"; var_dump($a); $a = false; print $a. " n"; var_dump($a); # 34

変 数 と 型 オブジェクト 型 (object) クラスのインスタンス( 実 態 ) クラス オブジェクトの 設 計 図 クラスで 定 義 したメソッドを 使 える メソッド クラスに 紐 付 いた 関 数 メンバ 変 数 を 持 てる メンバ 変 数 オブジェクトの 中 に 格 納 されている 変 数 # 35

変 数 と 型 リソース 型 (resource) 外 部 リソース( 情 報 資 源 )への 参 照 を 保 持 する 特 殊 な 変 数 他 の 型 からの 変 換 は 不 可 能 ファイル/ディレクトリ データベース( 接 続, ステートメント, etc ) グラフィック(GD, ImageMagik, etc ) $fp = fopen("test.txt", "r"); var_dump($fp); fclose($fp); # 36

変 数 と 型 ヌル 型 (Null) 値 が 何 も 無 いことを 示 す 特 殊 な 変 数 以 下 の 場 合 にNullと 見 なされる Null が 代 入 されている 場 合 ( 下 記 サンプル 参 照 ) 値 が 何 も 無 い 場 合 変 数 が 存 在 しない 場 合 unset() 関 数 で 変 数 が 破 棄 されている 場 合 $var = null; var_dump($var); # 37

演 算 子 PHPの 基 本 演 算 子 演 算 子 の 種 類 代 数 演 算 子 代 入 演 算 子 比 較 演 算 子 加 算 子 / 減 算 子 文 字 列 演 算 子 # 38

演 算 子 算 術 演 算 子 数 値 を 足 したり 引 いたりするための 演 算 子 優 先 順 位 も 含 め 算 数 と 全 く 同 じ 例 説 明 詳 細 -$a 負 にする $aの 符 号 を 反 転 したもの $a + $b 加 算 $aと$bの 和 $a - $b 減 算 $aと$bの 差 $a * $b 乗 算 $aおよび$bの 積 $a / $b 除 算 $aおよび$bの 商 $a % $b 乗 余 $aを$bで 割 った 余 り # 39

演 算 子 算 術 演 算 子 演 習 : 変 数 に 値 を 代 入 し 計 算 してみましょう $a = 1; $b = 2; print ($a - $b); 値 演 算 子 を 変 更 して 演 算 結 果 を 確 認 しましょう # 40

演 算 子 代 入 演 算 子 変 数 に 値 若 しくは 演 算 結 果 を 代 入 する 演 算 子 例 $a = 3; $aに3を 代 入 説 明 $a += 5; $aに5を 加 算 $b="hello"; $bに 文 字 列 を 代 入 $a = 10; $a += 2; print ($a); # 41

演 算 子 比 較 演 算 子 2つの 値 を 比 較 する 演 算 子 演 算 結 果 はboolean 例 説 明 詳 細 $a == $b 等 しい $a === $b 等 しい 型 比 較 も 行 う $a!= $b 等 しくない $a <> $b 等 しくない ($a!=$bを 推 奨 ) $a!== $b 等 しくない 型 比 較 も 行 う $a = 1; $b = 2; var_dump($a===$b); # 42

演 算 子 比 較 演 算 子 ( 続 き) 2つの 値 を 比 較 する 演 算 子 演 算 結 果 はboolean 例 $a < $b より 少 ない 説 明 $a > $b より 多 い $a <= $b より 少 ないか 等 しい $a >= $b より 多 いか 等 しい $a = 1; $b = 1; var_dump($a<=$b); # 43

演 算 子 加 算 子 減 算 子 値 を+1または-1する 演 算 子 例 説 明 詳 細 ++$a $a++ 前 置 加 算 子 後 置 加 算 子 参 照 前 に$aを+1 参 照 後 に$aを+1 <?php $a = $b = 1; print ++$a; print " n"; print $a; print " n"; --$a $a-- 前 置 減 算 子 後 置 減 算 子 参 照 前 に$aを-1 参 照 後 に$aを-1 print $b++; print " n"; print $b; print " n";?> # 44

演 算 子 文 字 列 演 算 子 文 字 列 同 士 を 結 合 する 演 算 子 例 説 明 詳 細 $b = $a. ",There!"; 結 合 演 算 子. によって 文 字 列 を 結 合 する $b.= "There!"; 結 合 代 入 演 算 子 左 辺 の 値 に 文 字 列 を 結 合 する $a = "Hello"; $b = $a. ",There!"; print $b; # 45

演 算 子 論 理 演 算 子 複 数 の 条 件 式 を 論 理 的 に 結 合 する 演 算 子 です 例 説 明 詳 細 && 論 理 積 双 方 がTRUEの 場 合 にTRUEを 返 す ( or ) 論 理 和 いずれかがTRUEの 場 合 にTRUEを 返 す xor 排 他 的 論 理 和 いずれかがTRUEでかつ 双 方 ともTRUE でない 場 合 にTRUEを 返 す! 否 定 式 がFALSEである 場 合 にTRUEを 返 す $a = true; $b = false; var_dump($a xor $b); # 46

定 数 定 数 不 変 の 値 を 保 持 する 再 定 義 はできない 使 える 文 字 は 英 数 字 アンダースコアのみ スコープ( 後 述 ) 規 則 がない 配 列 は 格 納 できない define("hostname", "ZEND1"); define("hostname", "ZEND2"); print (HOSTNAME); # 47

定 数 マジック 定 数 自 動 的 に 定 義 される 定 数 使 われ 方 によって 値 は 変 化 する 名 前 LINE FILE FUNCTION CLASS METHOD 説 明 実 行 中 の 行 番 号 実 行 中 ファイルのフルパスとファイル 名 関 数 名 クラス 名 クラスのメソッド 名 # 48

制 御 構 造 と 関 数 制 御 構 造 とは プログラムの 流 れを 制 御 するもの 制 御 構 造 の 種 類 順 次 構 造 上 から 順 に 処 理 を 行 う 構 造 選 択 構 造 式 の 結 果 に 応 じて 処 理 を 分 岐 する 構 造 反 復 構 造 式 の 結 果 に 応 じて 処 理 を 繰 り 返 す 構 造 # 49

if PHPの 基 本 制 御 構 造 と 関 数 条 件 に 一 致 した 際 (TRUEの 場 合 ) 処 理 を 実 行 します if ( 条 件 式 ) { 処 理 } $a = 1; if( $a == 1 ){ print '$aには1が 代 入 されています'; } # 50

else PHPの 基 本 制 御 構 造 と 関 数 条 件 に 一 致 しない 場 合 (FALSE) 処 理 2を 実 行 し ます $a = 1; if( $a >= 10 ){ }else{ } if ( 条 件 式 ) { 処 理 1 } else { } 処 理 2 print '$aは10 以 上 です'; print '$aは9 以 下 です'; # 51

制 御 構 造 と 関 数 elseif 条 件 式 1に 一 致 せず(FALSE) 且 つ 条 件 式 2に 一 致 した 場 合 (TRUE) 処 理 2を 実 行 します $a = false; $b = true; if($a){ print "Hello"; }elseif($b){ } if ( 条 件 式 1) { 処 理 1 } elseif( 条 件 式 2){ } 処 理 2 print "bye"; # 52

while PHPの 基 本 制 御 構 造 と 関 数 条 件 式 の 結 果 が(TRUE)のとき 処 理 を 繰 り 返 します while( 条 件 式 ) { 処 理 } $i = 1; while( $i <= 10 ){ echo $i++. " n"; } # 53

制 御 構 造 と 関 数 do while 条 件 式 の 結 果 が 真 (TRUE)のとき 処 理 を 繰 り 返 し ます 処 理 を 実 行 した 後 で 条 件 式 を 評 価 します do{ 処 理 while( 条 件 式 ) $i = 0; do{ print ++$i. " n"; } while( $i <= 10 ); # 54

for PHPの 基 本 制 御 構 造 と 関 数 開 始 時 の 処 理 を 無 条 件 で 実 行 します 条 件 式 の 結 果 が(true)の 時 処 理 を 実 行 します 実 行 後 の 処 理 を 行 い 条 件 式 の 結 果 が(false)にな るまでループ 処 理 を 継 続 します for( $i=1; $i<=10; $i++ ){ } for( 開 始 時 の 処 理 ; 条 件 式 ; 実 行 後 の 処 理 ){ } 処 理 echo $i. " n"; # 55

foreach PHPの 基 本 制 御 構 造 と 関 数 配 列 要 素 に 対 する 反 復 構 造 配 列 の 要 素 が$value( 任 意 の 名 称 )に 代 入 されてい きます 二 種 類 の 構 文 があります $a = array("php", "perl", "java"); foreach($a as $val){ } foreach ( 配 列 as $value){ } 処 理 print $val. " n"; # 56

制 御 構 造 と 関 数 foreach ( 構 文 ) 連 想 配 列 をループ 処 理 する 際 非 常 に 有 効 です 要 素 のキーが $key に 代 入 されます foreach ( 配 列 as $key => $value){ 処 理 } $os = array( "opensource" => "linux", "ms" => "windows", "apple" => "osx" ); foreach( $os as $key => $val ){ print $key. "::".$val." n"; } # 57

break PHPの 基 本 制 御 構 造 と 関 数 その 時 点 で 反 復 構 造 (while, do-while, for, foreach ) とswitch( 後 述 ) 構 造 を 抜 けます for($i = 1; $i < 50; $i++){ if($i == 25){ break; } print $i. " n"; } # 58

制 御 構 造 と 関 数 continue 反 復 構 造 の 残 りの 処 理 をスキップし 次 の 処 理 を 実 行 します $i = 0; while($i < 10){ $i++; if($i == 5){ continue; } print "$i". " n"; } # 59

switch PHPの 基 本 制 御 構 造 と 関 数 一 つの 変 数 を 複 数 の 値 と 比 較 し それぞれ 異 なる 処 理 を 行 わせる 制 御 構 造 switch ( 条 件 式 ) { case a : } 処 理 a break; case b : 処 理 b break; default : 処 理 $a = 1; switch( $a ){ case 0: print 'very good'; break; case 1: print 'good'; break; case 2: print 'not bad'; break; default: print '...'; } # 60

return PHPの 基 本 制 御 構 造 と 関 数 スクリプトの 実 行 を 中 止 します print "a n"; print "b n"; return; print "c n"; # 61

制 御 構 造 と 関 数 include require PHPスクリプトを 読 み 込 みます // foo.phpが 無 いとwarningになります include "foo.php"; // bar.phpが 無 いとFATAL ERRORになります require "bar.php"; # 62

制 御 構 造 と 関 数 include_once require_once 1 度 だけPHPスクリプトを 読 み 込 みます 2 度 目 に 実 行 しても 再 度 読 み 込 みは 行 いません // foo.phpが 無 いとwarningになります Include_once "foo.php"; // bar.phpが 無 いとFATAL ERRORになります require_once "bar.php"; # 63

制 御 構 造 と 関 数 関 数 とは 処 理 を 一 まとめにしたもの 2 種 類 の 関 数 が 存 在 する ビルトイン 関 数 PHPにデフォルトで 組 み 込 まれている 定 義 済 みの 関 数 ユーザ 定 義 関 数 ユーザ 自 身 が 定 義 する 関 数 # 64

制 御 構 造 と 関 数 ビルトイン 関 数 DB 接 続 や 文 字 列 操 作 など 多 種 にわたる 関 数 が 存 在 例 文 字 列 操 作 strcmp, strstr, strcat, strlen, etc DB 操 作 pg_connect, mysql_query, db2_prepare, etc 1000 以 上 存 在 します http://php.benscom.com/manual/ja/indexes.php#in dex.functions # 65

制 御 構 造 と 関 数 ユーザ 定 義 関 数 function 命 令 を 使 用 して 定 義 を 行 う 関 数 名 の 命 名 規 則 は 変 数 と 同 じ function 関 数 名 ( 引 数 ) { } 処 理 ( 戻 り 値 ) 引 数 とは 関 数 に 渡 す 値 処 理 を 行 ってほしい 対 象 戻 り 値 とは 関 数 で 処 理 を 行 った 結 果 を 自 動 的 に 返 したもの # 66

制 御 構 造 と 関 数 ユーザ 定 義 関 数 まずは 簡 単 な 関 数 を 定 義 してみましょう function foo(){ } print 'こんにちは'; 定 義 した 関 数 を 実 行 してみましょう foo(); # 67

制 御 構 造 と 関 数 ユーザ 定 義 関 数 引 数 と 戻 り 値 のある 関 数 を 定 義 してみましょう function sale($teika){ $urine = $teika * 0.7; return $urine; } 定 義 した 関 数 を 実 行 してみましょう print "3 割 引!! t". sale(1500). " 円 "; # 68

制 御 構 造 と 関 数 スコープ( 変 数 の 有 効 範 囲 ) 関 数 内 にある 変 数 ローカル 変 数 関 数 外 にある 変 数 グローバル 変 数 2 種 類 の 変 数 は 全 く 別 の 世 界 に 存 在 する $a = 1; function hoge(){ $a; print ($a + 1); } hoge(); グローバル 変 数 の 有 効 なエリア ローカル 変 数 の 有 効 なエリア # 69

制 御 構 造 と 関 数 スコープ( 変 数 の 有 効 範 囲 ) グローバル 宣 言 することで ローカル 変 数 をグ ローバル 変 数 として 扱 うことが 可 能 $a = 1; function hoge(){ global $a; print ($a + 1); } hoge(); # 70

データのやりとり サーバ-クライアント 間 のデータのやり 取 りの 手 順 を 簡 単 なプログラムを 作 成 しながら 学 びます

データのやりとり 入 力 フォーム WebアプリケーションではHTMLのフォームによ るデータのやりとりが 非 常 に 多 く 見 られます クライアント 側 1 3 2 サーバ 側 apache PHP 1 ブラウザの 入 力 フォームに 入 力 された 値 はHTTPプロトコルによってサーバに 送 信 される 2 サーバ 側 では 値 をPHPにより 受 け 取 り ロジカルな 処 理 を 行 う 3 PHPスクリプトの 実 行 結 果 がクライアントに 送 られ ユーザのブラウザ 表 示 に 反 映 される # 72

データのやりとり 実 際 にプログラムを 作 ってみましょう まず 簡 単 な 入 力 フォームを 作 成 します(.htmlで 保 存 ) <html> <body> <form action="post.php" method="post"> <table border = "1"> <tr> <td> 名 前 </td> <td><input type="text" name="name"></td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" value=" 送 信 "></td> </tr> </form> </table> </body> </html> # 73

データのやりとり データを 受 け 取 り 処 理 を 行 う <?php htmlの <form>タグのmethod 属 性 を post で 指 定 した 場 合 PHPではスーパーグローバル 変 数 ( 詳 細 は 後 述 ) $_POST で 受 け 取 ることが 出 来 る フォームで 送 信 した 値 は<input>タグのname 属 性 で 指 定 した 名 称 をキーとした$_POSTの 連 想 配 列 に 格 納 される PHPスクリプトを 作 成 し 実 際 にアウトプットを 表 示 してみま しょう $name = $_POST['name']; print " 名 前 を 受 け 取 りました". "<br />". "$name";?> # 74

データのやりとり スーパーグローバル 変 数 PHPスクリプトにアクセスした 時 点 で 自 動 的 に 定 義 される 変 数 関 数 内 であってもアクセス 可 能 値 は 連 想 配 列 として 格 納 される $_POSTもスーパーグローバル 変 数 のひとつ # 75

データのやりとり $_POST フォームからHTTP POST(HTTPのリクエス ト)で 送 信 された 値 が 格 納 されます HTMLフォーム <input type="text name="hoge" > $_POST['hoge'] ブラウザ 送 信 ボタンを 押 すとサーバにデータが 送 信 され $_POSTに 連 想 配 列 として 格 納 される # 76

データのやりとり $_GET フォームからHTTP GET(HTTPのリクエスト) で 送 信 された 値 が 格 納 されます HTMLフォーム ブラウザのアドレスバー <input type="text name="hoge" > クエリ $_GET['hoge'] ブラウザ 送 信 ボタンを 押 すとURLに クエリ という 形 でデータを 付 け 加 えて 送 信 される $_POST 同 様 に 連 想 配 列 として 格 納 される # 77

データのやりとり スーパーグローバル 変 数 一 覧 変 数 名 $_GET $_POST $_COOKIE $_REQUEST $_FILE $_SESSION $_SERVER $_ENV 説 明 HTTP GETによりクエリ 情 報?キー 名 = 値 として 渡 された 情 報 HTTP POSTによりHTMLフォームから 渡 された 情 報 HTTP Cookieによりスクリプトに 入 力 された 情 報 $_GET,$_POST,$COOKIE,$_FILESの 値 をまとめて 管 理 アップロードされたファイルに 関 する 情 報 スクリプトのセッションに 現 在 登 録 されている 変 数 Webサーバーや 実 行 環 境 に 関 係 する 情 報 を 格 納 した 変 数 環 境 変 数 に 関 しての 情 報 # 78