44
FuelPHP 勉強会 神奈川工科大学大学院 情報工学専攻 猪狩 知也

Fuel php勉強会 1

Embed Size (px)

Citation preview

Page 1: Fuel php勉強会 1

FuelPHP勉強会神奈川工科大学大学院 情報工学専攻

猪狩 知也

Page 2: Fuel php勉強会 1

目次・はじめに

・FuelPHPについて

・MVCについて

・開発環境のインストール

・FuelPHP体験◦事前準備

◦ oilコマンド

◦ Model View Controller

2

Page 3: Fuel php勉強会 1

はじめに今回の対象

・PHPやその他プログラミング言語を触ったことある人

・ApacheやMySQLも少し触って鯖やDBがなんとなくでも分かる人

分からないことあったらその場ですぐに聞いて下さい

3

Page 4: Fuel php勉強会 1

FuelPHPについてPHPのMVCフレームワーク

4

Page 5: Fuel php勉強会 1

FuelPHPについて特徴

・PHP 5.3ベース

・使用するクラスの自動読み込み

・oilコマンドにより開発支援

・ViewModel

・HMVC対応

5

Page 6: Fuel php勉強会 1

MVCについてModel View Controller

・3つの機能に分割

・コントローラー◦ リクエストの処理やモデルとビューの制御

・モデル◦データの処理

・ビュー◦描画部分の処理

6

Page 7: Fuel php勉強会 1

MVCについて例) 掲示板でスレッドを表示する

7

Controller

書込一覧の取得

Model

View

HTMLの取得

ブラウザに描画

DBから書込一覧取得

HTMLのコードを生成

Page 8: Fuel php勉強会 1

開発環境Windows上での開発環境の準備

・必要な物◦ fuelPHP本体

◦ xampp

◦ NetBeans

8

Page 9: Fuel php勉強会 1

開発環境の準備FuelPHP◦ http://fuelphp.com/

◦ダウンロードv1.7.1を押して任意のフォルダに保存する

9

Page 10: Fuel php勉強会 1

開発環境の準備FuelPHP◦任意のディレクトリに解凍する

◦よく分からない人はDドライブにFuelPHPフォルダを作ってそこに解凍する

10

Page 11: Fuel php勉強会 1

開発環境の準備xampp◦ https://www.apachefriends.org/jp/index.html

◦ ApacheやMySQLなどが色々入ってるもの

◦ダウンロードしてインストールして下さい

11

Page 12: Fuel php勉強会 1

開発環境の準備NetBeans◦ https://ja.netbeans.org/

◦ PHPの統合開発環境

◦ダウンロードしてインストールして下さい

12

Page 13: Fuel php勉強会 1

事前準備ApacheとMySQLを起動◦ xamppのコントロールパネルから起動させる

◦ポート80を使うのでSkypeと競合します

13

Page 14: Fuel php勉強会 1

事前準備ApacheとMySQLを起動◦緑になればOK

14

Page 15: Fuel php勉強会 1

事前準備セキュリティ関連の設定◦ http://localhost/xampp/index.php にアクセス

◦左のメニューのセキュリティをクリック

15

Page 16: Fuel php勉強会 1

事前準備セキュリティ関連◦セキュリティ設定をするURLにアクセス

16

Page 17: Fuel php勉強会 1

事前準備セキュリティ関連◦ MySQLのパスワードを設定する

17

Page 18: Fuel php勉強会 1

事前準備DB設定◦ xamppのメニューのtoolsからphpmyadminを開く

18

Page 19: Fuel php勉強会 1

事前準備DB設定◦ MySQLにログインする

◦ユーザ名はrootパスワードは先程設定したパスワード

19

Page 20: Fuel php勉強会 1

事前準備DB設定◦今回の勉強会用のDBを作成する

20

Page 21: Fuel php勉強会 1

事前準備DB設定◦今回の勉強会用のDBを作成する

21

Page 22: Fuel php勉強会 1

事前準備PHPのパスを通す◦ xamppをインストールしたフォルダ/php(C:\xampp\php)にパスを通す

22

Page 23: Fuel php勉強会 1

事前準備プロジェクトの作成◦ NetBeansでファイル→新規プロジェクトを作成するを選択する

23

Page 24: Fuel php勉強会 1

事前準備プロジェクトの作成◦既存のソースを使用するPHPアプリケーションを選択して次を押す

24

Page 25: Fuel php勉強会 1

事前準備プロジェクトの作成◦下記の通りに記述して次へを押す

25

fuelPHPを解凍したフォルダ

好きなプロジェクト名

UTF - 8

Page 26: Fuel php勉強会 1

事前準備プロジェクトの作成◦下記の通りに設定して終了を押す

26

http://localhost/(プロジェクト名)

チェックを付ける

Page 27: Fuel php勉強会 1

事前準備プロジェクトの作成◦左のメニューに作られたプロジェクトが表示されます

27

Page 28: Fuel php勉強会 1

事前準備config設定◦ fuel/app/configフォルダ内のconfig.phpを修正

◦ always_load配列をコメントアウトから外す

◦ Package配列のormをコメントアウトから外す

28

行数 修正前 修正後

260行目、273~275行目、311行目 コメントアウトされている コメントアウトをはずす

Page 29: Fuel php勉強会 1

事前準備DB設定◦ fuel/app/config/developmentフォルダ内のdb.phpを編集

29

行数 修正前 修正後

9行目 'mysql:host=localhost;dbname=‘fuel_dev', ‘mysql:host=localhost;dbname=‘作ったDB名’,

11行目 'password' => 'root', ‘password’ => ‘設定したパスワード',

Page 30: Fuel php勉強会 1

事前準備とりあえず試してみる◦ http://localhost/fueltest/public/にアクセス

◦ こんなのがでてくればOKです

30

Page 31: Fuel php勉強会 1

事前準備とりあえず試してみる◦ http://localhost/fueltest/public/hello/igaigaにアクセス

◦ hello/○○の○○の部分が出てくる

31

Page 32: Fuel php勉強会 1

oilコマンドscaffold◦テーブルの自動生成

◦付属するモデルやコントローラ等も自動生成

32

Page 33: Fuel php勉強会 1

oilコマンドテーブルの作成◦ oilコマンドを使ってtabletestテーブルを作成

◦プロンプトを開きfuelPHPを保存したディレクトリに移動

◦ php oil g scaffold tabletest id:int name:varchar[128] を実行

33

Page 34: Fuel php勉強会 1

oilコマンドコントローラー等が自動生成されているのを確認

34

Page 35: Fuel php勉強会 1

oilコマンドテーブルの作成◦ scaffoldを実行した時点ではmygrateファイルを生成した所まで

◦ php oil refine mygrateをすることでDBにテーブルを作成する

35

Page 36: Fuel php勉強会 1

oilコマンドDB操作◦ http://localhost/fueltest/public/tabletestにアクセス

◦色々Web上で操作できます

36

Page 37: Fuel php勉強会 1

MVCModel View Controller◦どんな挙動をするのかを試してみる

id1のユーザ名を表示するプログラムを実装する

37

Page 38: Fuel php勉強会 1

事前準備データを入れておく◦ Tabletestにid1のデータを追加しておく

38

Page 39: Fuel php勉強会 1

MVCController◦ユーザがデータを要求するメソッドを用意する

◦ action_getuser1()メソッドを実装

◦ クラス名/メソッド名でアクセス可能

◦ return したものが表示されている

39

fuel/app/classes/controller/tabletest.php

Page 40: Fuel php勉強会 1

MVCModel◦ DBの処理やロジックの処理等を担当

◦基本的な機能はModelクラスが既に実装している

40

fuel/app/classes/model/tabletest.php fuel/app/classes/controller/tabletest.php

Page 41: Fuel php勉強会 1

MVCView◦ユーザに見える箇所の処理

◦ fual/app/views/tabletestフォルダにtest.phpを作成

41

fuel/app/views/tabletest/test.phpfuel/app/classes/controller/tabletest.php

Page 42: Fuel php勉強会 1

まとめFuelPHPを動かすまでの手順をやりました◦事前準備が意外と多い

MVCがどう動いているか?を試しました◦他のフレームワークでも大体同じです

とりあえず導入…ということで色々省いています◦希望があれば第2回やります

42

Page 43: Fuel php勉強会 1

参考文献・スライド本◦ FuelPHP入門 (株式会社ソーテック社)

Web◦ Objective-PHP.NET

43

Page 44: Fuel php勉強会 1

44