FuelPHPのEmailパッケージをS/MIMEに対応させる

FuelPHPのEmailパッケージをS/MIMEに対応させるお話です。(今回は電子署名のみ) Emailパッケージを拡張するのには、以下のような方法で行いました。 #! /bin/blog: [FuelPHP]ネームスペースを上書きしてパッケージのクラスを書き換える 変更が必要なのは Email\Email_Driver だけなので、Emailパッケージから必要なファイルをコピーして以下のような構成を作ります。 fuel └ packages └myemail ├─ bootstrap.php |─ classes | └─ email | └─ driver.php └─ config └─ email.php bootstrap.php は以下のように指定して、コピーした方のファイルでEmail_Driverを上書きします。 また、fuel/app/config 以下の config.php のalways_load に myemail を追加するのも忘れずに。 ...

多次元配列の要素を特定の値をキーとしてマージする

FuelPHPのArrクラスでは、非常に便利な配列操作のヘルパー関数が用意されているのですが、ありそうでなかったので… それから、記事タイトルが何言ってるのか正直自分もよく分からないので例を。 array( array( 'group' => 'CV1', 'name' => 'Miku' ), array( 'group' => 'CV2', 'name' => 'Rin' ), array( 'group' => 'CV2', 'name' => 'Len' ) ); のような入力を与えた時に、 ...

一つのカラムに貼られた複数のFULLTEXT INDEXを使い分ける

Mroongaでお手軽全文検索して遊んでいたんですが、前方一致を使う場合は Qiita: mroongaでgroongaの前方一致検索を使うには にあるように、パーサーを無効にしないと期待した結果が得られません。 一つのカラムに対して、普通に全文検索する場合と前方一致検索を使い分けたい場合には、上記記事のように2つカラム用意してそれぞれにパーサーを使ったFULLTEXT INDEXと、無効にしたFULLTEXT INDEXを貼らなきゃいけないのでしょうか。 ちょっと無駄な感じがしましてどうにかできないかな~と。 ...

FuelPHP MigrationでMroongaのラッパーモードを利用する

FuelPHPのマイグレーションでMroongaのラッパーモードを利用したテーブルを作成する方法です。 備忘録として書いておきます。 Mroongaのラッパーモードを利用するには、テーブルオプションを ENGINE = Mroonga COMMENT = 'engine "InnoDB"' のように指定する必要があります。 DBUtil::create_table メソッドの第5引数 $engineでストレージエンジンの指定は可能なのですが、コメントの指定をどうしようかと悩んでいました。 create_tableメソッドのソースを読んでみると、$engineはエスケープなども行われずにそのまま文字列結合しているようなので、COMMENTも一緒にぶち込むことにしました。 見た目は良くないですが、Coreを拡張するのも面倒なので… ...

Open Web Board のBLE Notification のバグ修正

KDDIが発表したFirefox OSを搭載した開発ボード「Open Web Board」 イメージファイルやソースコードも公開されました。 au Firefox OS 関連技術情報: http://opensource.kddi.com/owb/#download 以前、とあるイベントでOpen Web BoardとBLEデバイスを使ったアプリ開発をしていたのですが、その際にOpen Web BoardのGeckoに独自実装されているBLE GATTのNotificationの値が取れないというバグを発見しました。 現時点(2015.1.23公開)のソースコードでも未修正のようなので、まとめておきます。 ...