プログラマ気分

メモや自分が思ったことを書く

スポンサーサイト

2014.08.06 Wednesday

一定期間更新がないため広告を表示しています

-|-|-|by スポンサードリンク

FuelPHP勉強会東京Vol.1で発表してきました

2012.07.09 Monday

FuelPHP 勉強会 東京 Vol.1
日程:2012/07/08(日) 13:00 〜 17:00
会場:VOYAGE GROUP 8F パンゲア さま

上記の日程で FuelPHP 勉強会 東京 Vol.1 が開催されました。

当初、勉強会に参加のみの予定でしたが、@mukaken さんに「何か発表しませんか?」とお声を掛けて頂いたこと、@peketamin さんの言葉に勇気付けられたこともあり、初めてではありましたが発表してきました。

発表資料

先程も書きましたが、人前での発表なんて初めてで、とても聞き辛い発表だったと思います。スライドもガンガン進めて行って、「はえぇ〜よ!」って突っ込み入っても仕方ないなと反省してるところです。

ですが、当初の目標として自分が持っている情報を少しでも共有出来ればと思っていたので、その点については達成出来たのではないかと思っています。(勝手に)

とにかく、良い経験が出来ました。

会場をご用意して下さった VOYAGE GROUP さま、スタッフや参加頂いた皆さま方に再度お礼申し上げます。

なお、FuelPHP 勉強会 東京は今後も月1ペースで開催していくそうです。

ご興味ある方は参加してみては如何でしょうか。
(そういえば、女性の参加を熱望されてました)

PHP00:57comments(0)trackbacks(1)by ニノミヤ カズノリ

【FuelPHP】バリデーションルール match_field について

2012.03.08 Thursday

【12/07/02】Validation クラスを継承しないやり方を追記しました。

FuelPHP のバリデーションには、他のフィールドと値が同じかどうかをチェック出来る match_field と言うルールが用意されています。

使い所としては、メールアドレスの入力確認、パスワードの入力確認などで使えます。

大変便利ですが、一点問題があります。
それは、入力時の値にしかマッチしない点です。

つまり、add_rule をフィルタとして扱った場合はマッチしないと言う事です。
実際の例を下に挙げてみます。

▼結果
string(72) "メールアドレス(確認)は、email1と異なっています。"
bool(true)

正しくマッチする様に、新たなルールを考えてみました。(以下の方法は、add_callable を使ってではなく、¥Fuel¥Core¥Validation を継承して実現させている点に注意してください。)

▼結果
bool(true)

match_validated_field は、バリデート後の値を元に比較を行いますので、結果は true となっています。

Validation クラスを継承してのルール追加が良い方法なのかは分かっていません。使用の際は自己責任でお願いします。

【追記:12/07/02】

よく考えたら、Validation#active を使えば、態々継承する必要なかった。

▼以下、修正後のソース

PHP22:32comments(0)trackbacks(0)by ニノミヤ カズノリ

【FuelPHP】カスタムメッセージを、フィールド毎に validation.php の如く設定してみる

2012.03.07 Wednesday

validation.php によるカスタムメッセージの設定は、決まった文言を出力する分には簡単でとても良いのですが、特定のフィールドで文言を替えたい場合には向きません。(変更したい Fieldset を取得して set_message する必要があるかと思います。)

例えば下の例では、お名前と性別を required に設定しています。

▼結果
string(39) "お名前を入力してください。"
string(36) "性別を入力してください。"

性別が入力式であれば良いのですが、多くは男性/女性の選択式です。すると、エラー文言としては「性別を選択してください。」が相応しいと感じます。

しかし、validation.php には既に required の文言が設定されている為、性別用の文言を追加する事ができません。大変不便です。

そこで自分が考えたのが次の方法

validation.php はそのまま。新たに言語ファイルを一つ用意します。

▼結果
string(39) "お名前を入力してください。"
string(36) "性別を選択してください。"

更に、別のルールにも他とは違う文言を設定したい場合は、下の様にします。

フィールドを追加したい場合は、下の様にします。

他に楽な設定方法があれば教えてください。

PHP23:24comments(0)trackbacks(0)by ニノミヤ カズノリ

【PHP】Gumroad API Client 作ってみた

2012.02.22 Wednesday

Gumroad API が公開されていたので、PHP で API クライアントを作ってみました。だいぶ適当、且つコメント無し

https://github.com/wakuworks/php-gumroad
PHP5.3 以上、MIT ライセンス
好きに改変してください。

使い方はこんな感じ

※SplClassLoader などでクラスをロードしてください。

PHP11:45comments(0)trackbacks(0)by ニノミヤ カズノリ

【FuelPHP】parser.php の extensions 設定について

2012.01.29 Sunday

parser.php では、どの拡張子がどのテンプレートエンジンを使うかを設定できます。例えば、packages/parser/config/parser.php ではこの様に設定されています。

Smarty を愛用している事もあって、テンプレートを .smarty とするのは違和感があります。そこで、.tpl を View_Smarty に結びつく様にしてみます。

これで設定は完了です。次にテンプレートを読み込んでみます。

読み込む上で、下記二点に注意してください。

これらを踏まえて書いたソースはこちら

拡張子を省略しても、もちろん動作はします。
その場合は、各クラスの extension プロパティが適用されます。
View_Smarty の extension はデフォルトが "smarty" ですから、下記は welcome/index.smarty を読み込む事になります。

また、parser.php での拡張子の設定は、Parser¥View#forge でしか活かされません。このメソッドを使わず、自分でインスタンスを生成した場合は、全て自分で設定しなければなりません。

以下、設定例です。

PHP20:00comments(0)trackbacks(0)by ニノミヤ カズノリ

calendar
 123456
78910111213
14151617181920
21222324252627
28293031   
<< May 2017 >>
sponsored links
selected entries
categories
archives
recent comment
recent trackback
links
profile
search this site.

others
mobile
qrcode