[[PHP]]
#norelated
#contents

CENTER:&ref(fuelphplogo.jpg);

* FuelPHP入門 [#f6ad6cf9]
#html{{
<table border="0" cellpadding="5"><tr><td valign="top"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4881669419/vertex9-22/" target="_blank"><img src="http://ecx.images-amazon.com/images/I/511wN5khDHL._SL160_.jpg" border="0"></a></td><td> </td><td valign="top"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4881669419/vertex9-22/" target="_blank">FuelPHP入門</a><br>早川 聖司<br>ソーテック社<br>2012-06-02<br>2709円</td></tr></table>
}}

* 学習メモ [#a965ed50]
|頁+行|章節|項目|日付|h
//| [[書名_p_L]] | | | |

* 目次 [#b9d27b66]
Part1 FuelPHPの概要
 Chapter 1-1 FuelPHPとは
 Chapter 1-2 FuelPHPのMVCモデル

Part2 触って覚えるFuelPHPの基本
 Chapter 2-1 FuelPHPのダウンロードとディレクトリ構成
 Chapter 2-2 FuelPHPの基本動作
 Chapter 2-3 簡易ブログアプリケーションの作成

Part3 コントローラを深く知る
 Chapter 3-1 コントローラの基本
 Chapter 3-2 コントローラに定義済みのメソッドとプロパティ
 Chapter 3-3 コントローラの拡張
 Chapter 3-4 モジュールとHMVCリクエスト

Part4 ビューを深く知る
 Chapter 4-1 ビューの基本
 Chapter 4-2 ビューに記述するURLについて
 Chapter 4-3 複数のビューを組み合わせる
 Chapter 4-4 テンプレートエンジンを使う

Part5 モデルを深く知る
 Chapter 5-1 モデルの基本
 Chapter 5-2 より複雑なデータベースの操作
 Chapter 5-3 oilコマンドを利用したOrmモデルの自動生成
 Chapter 5-4 Paginationクラス
 Chapter 5-5 実践サンプル:ブログ(1)

Part6 Webアプリケーションの基本機能(1)―フォームの処理(1)
 Chapter 6-1 ユーザ入力の受け取り
 Chapter 6-2 ファイルアップロード

Part7 Webアプリケーションの基本機能(2)―フォームの処理(2)
 Chapter 7-1 Formクラスの利用
 Chapter 7-2 Validationクラスの利用
 Chapter 7-3 Fieldsetクラスの利用

Part8 Webアプリケーションの基本機能(3)―認証とセッション管理
 Chapter 8-1 Authパッケージ
 Chapter 8-2 Sessionクラス
 Chapter 8-3 実践サンプル:ブログ(2)

Part9 Webアプリケーションの基本機能(4)―Emailパッケージ
 Chapter 9-1 Emailクラスの基本
 Chapter 9-2 実践サンプル:お問い合わせフォーム

Part10 Webアプリケーションの基本機能(5)―その他のコアクラス
 Chapter 10-1 その他のコアクラス
 Chapter 10-2 コアクラスの拡張

APPENDIX 付録
 Appendix-1 コーディング規準
 Appendix-2 コマンドラインツールによる開発支援
 Appendix-3 統合開発環境 

* 出版社 [#n9b08005]
- FuelPHP入門
http://www.sotechsha.co.jp/pc/html/941.htm
- FuelPHP入門 サポートページ
http://www.sotechsha.co.jp/sp/941/
展開用パスワード: ''fuelphp2012''

------------------------------
* メモ [#s2b89342]

** p.12 FuelPHPの特徴 [#j792cf5c]
PHP5.3ベースで開発されている。

-名前空間が利用できる。
http://php.net/manual/ja/language.namespaces.php

-遅延静的束縛が利用できる。
http://php.net/manual/ja/language.oop5.late-static-bindings.php

-オートローダーによる必要なクラスの自動読み込み
オートローダー(Autoloaderクラス)が、必要なクラスを必要時に自動的に読み込んでくれるため、事前にrequire()しておく必要がない。

-oilコマンド
FuelPHPに同梱されているoilコマンドにより、MVCのスケルトン(骨格)を自動生成可能。

-HMVC(Hierarchical 階層的 MVC)対応

** p.14 3つのコントローラー [#j439c9a9]
FuelPHPのコントローラーには、大きく分けて3つある。
+ Controllerクラスを拡張して作る、通常のコントローラー
+ Controller_Templateクラスを拡張して作る、テンプレートコントローラー
+ Controller_Restクラスを拡張して作る、RESRコントローラー → XMLやJSON形式のデータを送信する

-コントローラーは、クラスとして実装する。
-コントローラークラス内のメソッドを「アクション」と呼ぶ。

** p.19 ディレクトリー構造 [#v81b5645]
fuel/ディレクトリー内

| app/ | FuelPHPユーザーが開発するアプリケーションのプログラム等 |
| core/ | FuelPHPが標準で提供するプログラム等 |
| packages/ | パッケージとして提供されるプログラム等 |

** p.20 パーミッションの変更 [#a8c34776]
Webサーバーが書き込みできるようにディレクトリーの権限(パーミッション)を変更する。

- fuel/app/cache/
- fuel/app/logs/
- fuel/app/tmp/

** p.21 FuelPHPで扱うディレクトリーの定数 [#q37f9542]
public/index.phpで、フレームワークで使うディレクトリーが、定数として設定されている。

| fuel/app/ | APPPATH |
| fuel/core/ | COREPATH |
| fuel/packages/ | PKGPATH |
| public/ | DPCROOT |

** p.22 アクションの命名則 [#x040e508]
FuelPHPでは、コントローラークラス内のメソッド=「アクション」の名前を以下のように指定する。
+アクション名は、「action_」というプレフィックス(接頭辞)で始まること。
(例)「action_index()」等

** p.23 コントローラーの命名則、action_404()メソッド [#od6600d0]
FuelPHPでは、コントローラーのクラス名とファイル名を以下のように指定する。
+クラス名は、「Controller_」というプレフィックス(接頭辞)で始まること。
+プレフィックス以降(コントローラー名)は単語をアンダースコアで区切り、各単語の先頭の文字は大文字にすること。
+ファイル名はコントローラー名をすべて小文字にしたものに、拡張子「.php」をつけたものであること。

action_404()メソッドは、指定されたメソッドが存在しない場合に実行される。

** p.27 サンプルブログのSQL [#m453703b]
#code(sql){{
CREATE TABLE IF NOT EXISTS `posts` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `summary` varchar(255) NOT NULL,
  `created_at` int(11) NOT NULL,
  `updated_at` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
}}

** p.27 データベースの設定 [#cecfa2eb]
/fuel/app/config/db.php

#code(php){{
<?php
/**
 * Use this file to override global defaults.
 *
 * See the individual environment DB configs for specific config information.
 */

return array(
	'default' => array(
		'connection' => array(
			'dsn' => 'mysql:hostlocalhost;dbname=myblog',
			'username' => 'dbuser',
			'password' => 'dbpass',
		),
	),
);

}}

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS