FuelPHP Advent Calendar 2011 16日目です。 @madmamor です。 先日の15日目は @eifuku さんの cent osでのphp5.3環境のセットアップ with "yum" でした。 FuelPHPのcoreクラスを拡張したくなるケースは、色々と出てくると思います。 以前、Logクラスを拡張したので、そのまとめ的な内容です。 先に、ドキュメントは以下になります。 公式: http://docs.fuelphp.com/general/extending_core.html 日本語: http://press.nekoget.com/fuelphp_doc/general/extending_core.html 私がLogクラスを拡張した理由は2つ有ります。 (1) メソッド名の簡略化 Log::info は Log::i で呼び出したい。 Log:
CSRF対策についてはこちらの記事が良いかもしれません。 [FuelPHP]画面リロードや不正なフォーム登録を防ぐ PHPには標準で $_SESSIONが用意されていますが、FuelPHPにもセッション管理用に Sessionクラスが用意されています。 セッションの書き込みには Session::set() を使います。 名前と内容のペアを渡すだけなので簡単です。 Session::set( 'name', 'hogehoge' ); Session::set( 'characters', array( 'haruka', 'chihaya', 'miki', 'yayoi' ) ); 2行目のように、オブジェクトを渡すこともできます。 連想配列や、多次元配列でも可能です。 取り出すには Session::get() を使います。 $name = Session::get( 'name'
MySQLのviewを使うことで実現してみた。 ここではSpotという、名前と説明と位置情報を持つデータを考えてみる。 scaffoldでは、geometryを指定 php oil g scaffold -f spots title:string description:string location:geometry できあがったmigrationファイルのup()関数内で \DBUtil::create_index('spots', 'location', 'sp_index', 'spatial'); \DB::query("create view spots_all_view as select id, title, description, ASTEXT(location) as location, created_at, updated_at from spots")->exe
覚え書き程度にメモしています。 ASP/PHP/JS/HTML5/CSS3/Android/Objective-C/FLEX/VB/Javaなどなど FuelPHPでメール送信(smtp)を試してみました。 やったことをメモ程度に。。。 まず、App/config/config.phpのpackagesにemailを追加 'packages' => array ( 'email', ); 次にpackages/email/config/email.phpをApp/config/にコピーします。 ここでメールの設定。 (メールサーバとか文字コードとかドライバとか) 実際にメール送信するコードは以下 $email = Email::forge(); // $email->from('test@example.com', mb_encode_mimeheader('テストユーザ', 'jis')
最近社内でインフルエンザよりもFuelPHPが流行っています。 FuelPHPを使ってみて、感じたのは ※CakePHPしか使った事ないので、Cakeと比較してですが。 動作が速い。 ドキュメントが少ない。 フレームワークのコア部分の拡張が容易 構成がシンプルで見やすい ドキュメントが少ないのが難点ですが、使いやすいフレームワークだと思います。 そこで、最初に行っておくと開発する時に少しだけ(個人的にですが)利便性が向上する方法を3点挙げます。 なお、バージョンは、php5.3.3&FuelPHP1.7.1です。 1.開発環境と本番環境の設定の切り分け 2.コアクラスの拡張 3.共通ロジックの読み込み 1.開発環境と本番環境の設定の切り分け FuelPHPはデフォルトで本番環境と開発環境の接続先を切り替えが出来ます。 ただ、定数とかも開発環境と本番環境で分けたいことってありますよね
FuelphpでValidationクラスを使用し、エラーを出力した際にエラーメッセージを日本語で出力する方法をメモします。 最初の設定では英語で表示されるので。 エラーメッセージは日本語で出力することが多いと思うので、最初に設定してると実装しやすくなると思います。 また、エラーメッセージを個別に設定して、設定ファイルの内容を上書きする方法をメモします。 ■ 日本語のエラーメッセージを設定 設定ファイルで日本語のファイルを読み込むように設定します。 「fuel/app/config/config.php」の「language」の箇所を「ja」に変更します。 /** * Localization & internationalization settings */ 'language' => 'ja', // Default language 'language_fall
gistfile1.php `� } V p��| V Model_Profile::query() ->and_where_open()->where('id', 'like', '%foo%')->or_where('user_id', 'like', '%foo%')->and_where_close() ->and_where_open()->where('id', 'like', '%bar%')->or_where('user_id', 'like', '%bar%')->and_where_close() ->get(); // WHERE (`t0`.`id` LIKE '%foo%' OR `t0`.`user_id` LIKE '%foo%') AND (`t0`.`id` LIKE '%bar%' OR `t0`.`user_id` LIKE '%bar%') Mod
FuelPHPを使い始めているのですが、良いと評価できる点にコマンドラインから実行できる便利なタスクがあります。Railsではrake, railsというコマンドで各種タスクを実行でき、それを踏襲しています。今回はその中でも初期データ作成に便利なseedという機能をFuelPHP上に作ってみました。 FuelPHPを使い始めているのですが、良いと評価できる点にコマンドラインから実行できる便利なタスクがあります。Railsではrake, railsというコマンドで各種タスクを実行でき、それを踏襲しています。今回はその中でも初期データ作成に便利なseedという機能をFuelPHP上に作ってみました。 taskを拡張するクラスを配置する 置き場所は fuel/app/tasks/*.php です。そして、seedファイルの置き場所は fuel/app/seeds/*.php としました。今回、実
public function action_xxx() { $path = <some path> // <some path>は画像のパスを取得するコードに変更します $body = file_get_contents($path); return Response::forge($body, 200, array('Content-Type' => 'image/png')); } ResponseをContent-Typeをセットして作成しています。Content-Typeを変更することで、さまざまなファイルをブラウザに送ることができます。 特に画像であれば public function action_xxx() { $path = <some path> Image::load($path)->output(); exit(); }
こんばんは。ファガイです。今日は、FuelPHPのassetクラスに関してです。 例えば、 public/ assets/ images/ sample.png と、このようにassets内のimagesフォルダ内を参照するとします。 この状態で、Asset::img(“sample.png”);を行うとsample.pngは読み込めません。普通ですね。 通常、Asset::imgはデフォルトでasset/img内を確認するからです。 それで、どうするかですが。3つ方法があります。 フルパスで突っ込む方法。 Asset::img('http://..../assets/images/sample.png'); これだと行けます。 Asset::add_pathでパスを指定する方法。 Asset::add_path('assets/images/'); Asset::img('sample.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く