[[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',
),
),
);
}}