2012-01-01から1年間の記事一覧
Redisの各種コマンドの使用可能バージョン一覧。 (※2012/12/30時点でのRedis最新バージョンは2.6.7)コマンド一覧) Command reference – Redis string コマンド 有効バージョン リンク APPEND 2.0.0. ※ BITCOUNT 2.6.0. ※ BITOP 2.6.0. ※ DECR 1.0.0. ※ DECRB…
monit: error connecting to the monit daemon 『monit status』コマンド実行時、上記のエラーが出た場合、 Monitの設定ファイルに、以下を追加し、Monitの再起動を行う必要あり。 set httpd port 2812 allow localhost
MongoDBでfindAndModifyを使用したAuto Incrementの実装方法が公式サイトに載っています。Create an Auto-Incrementing Sequence FieldこれをPHPで実装する場合、以下のようになります。 Auto Increment用collectionの作成 あらかじめAuto Increment用のcoll…
がっつり使ったわけではないので、とりあえず環境構築まで。 タイトルが変だけど、まーいいか。 AppFogのSIGN UP AppFogのアカウントが無いと始まらないので、http://www.appfog.com/にアクセスし、右上『SIGN UP』からAppFogのアカウントを作成します。 ア…
FuelPHPのAgentクラスは、デフォルト設定の場合、http://browsers.garykeith.com/stream.asp?Lite_PHP_BrowsCapINIからUA一覧を取得し使用していますが、このサイトが閉鎖したようで、 1.3以前のバージョンでAgentクラスをデフォルト設定で使用している場合…
なんだかんだで毎回調べているような気がするので、 FuelPHPのインストールから諸々の下準備の流れをメモっておきます。以下を想定しています。 DocumentRoot : /var/www/html ProjectRoot : /var/www/sample FuelPHP Version : 1.3 1. FuelPHPのインストー…
あらかじめこの設定をしておけば、サイトのメンテナンス時、 毎回メンテページへのリダイレクトを設定する手間が省けます。 そこの『え?1回リダイレクトの設定すれば、後は毎回コメントを解除するだけなんだけど』とか言ってる人! ごもっとも。まー、色々…
シェルスクリプトの二重起動防止は、 ロックファイルを使用する pgrep、pkill、pidofコマンドを使用する 等、色々方法があると思いますが、 以下は、単純なファイル/ディレクトリ確認で重複起動チェックする方法です。 #!/bin/sh PIDFILE=$(basename $0).pid…
FuelPHPでテンプレートコントローラを使用している場合に、PCとスマホでビューを出し分ける方法を検討。ベースとなるテンプレートは スマホ : views/template_sp.php スマホ以外 : views/template.php スマホからアクセスされた場合、parent::before()を実行…
元ネタはこちら。ケーススタディ — redis 2.0.3 documentation上記ページの内容をFuelPHPで実装しました。 ※一部実装を変えている部分があります。ソースはこちら。https://github.com/mmat/fuelphp-redis-tweet ユーザー登録ページ 入力チェックを通過した…
※Ver1.2の情報なので最新バージョンと合わない部分があるかもしれません...タイトルそのまま。FuelPHP1.2のクエリビルダ関連を表にまとめました。 SELECT // SELECT * FROM... \DB::select() // SELECT `hoge`, `fuga` FROM... \DB::select(column1, column2…
FuelPHPのSimpleAuthのACLの概要は、以下のようになっています。 ロールを設定ファイルで管理 ユーザーではなく、グループに対しロールがひもづく 以下、設定例になります。 config $ vi app/config/simpleauth.php 設定対象は『groups』と『roles』になりま…
Fuelphpのテーマクラスのサンプルです。 『active』を変更する事により、テーマの切り替えが可能です。 サンプル Config app/config/theme.php 'mytheme1', 'fallback' => 'default', 'paths' => array(APPPATH.'views'), 'assets_folder' => 'themes', 'vi…
FuelPHPのAgentクラスは、下記URLからブラウザ情報を取得し、これを元にプラットフォーム等の判定を行っています。http://browsers.garykeith.com/stream.asp?Lite_PHP_BrowsCapINI上記URLへアクセスは最初に1度のみで、それ以降はキャッシュとして保持され…
Redisのバックアップ(スナップショット?)の取得方法のメモ。bgsaveでデータベースを保存、lastsaveで最終保存日時を確認後、データベースファイルをコピー。 $ redis-cli bgsave $ redis-cli lastsave lastsaveはUNIXTIMEで返ってくる為、要変換。 例) $ da…
FuelPHPには、標準でRedisクラスが用意されている為、特別な事をする必要はなく、そのままRedisへアクセスが可能です。例によって、ソート済みセット型を使用した、ランキング風のサンプルで試しました。以下は、ユーザー名と年齢のリストをソート済みセット…
redisでキーの一覧を取得する為のメモ。 $ redis-cli > keys * または $ redis-cli keys '*'
危険なほどのスピードを持つというKVS『Redis』。 redisドキュメント日本語訳を見て頂くと、Redisの持っている機能の概要が書いてあります。 インストール 自分の環境(CentOS 6.2)では、yumでインストールが可能でした。 # yum install redis # cp /etc/redi…
FuelPHPにはRestコントローラというものがあります。 使い方は簡単で、『Controller_Rest』を継承したコントローラを作成し、その中に処理を入れていくだけで、以下のフォーマットの出力が可能になります。 (core/classes/format.phpを見ると、jsonpやらyaml…
FuelPHPでページを丸々キャッシュする方法を調べたところ、『fuel-pagecache』というのを作っている方がいたので、試してみました。fuel-pagecache) https://github.com/xavividal/fuel-pagecache以下のような動作になっています。 Templateコントローラで出…
FuelPHPでページャー(Pagination)に書いた通り、FuelPHP標準のPaginationでは、カレントページより前のリンク表示数は、『num_links』で設定した値 - 1を表示するようになっています。(後はnum_linksで設定した数)例) これを、出来ればカレントページ番号を…
FuelPHPでページャー FuelPHP標準のPaginationを使用したページャーを実装してみます。想定バージョン) FuelPHP 1.3CodeIgniterの標準のページャーは、offsetがURLに入り、残念な感じになっていましたが、FuelPHPではそんな事はないようです。今回は、ページ…
いまさらながら、マスタDBを稼働させたまま、レプリケーションのスレーブを追加する為のメモ。前提条件は以下になります。 マスタのmy.cnfにて、『server-id』が設定されている マスタのmy.cnfにて、『log-bin』が設定されている ストーレジエンジンに『Inno…
FuelPHPバージョン確認方法 忘れそうなので、バージョン確認方法の個人的メモ。 $ cd {プロジェクトディレクトリ} $ php oil -v
FuelPHPで複数データベースを切り替える方法 FuelPHPでは複数データベースの切り替えが、CI同様、簡単に設定出来ます。参考) http://docs.fuelphp.com/classes/database/usage.html fuel/app/config/db.php まずは、DBのベース設定に対し、新しいデータベー…
SimpleAuthを使えば、簡単にログイン処理が実装出来てしまいます。 今回は手っ取り早く、Fieldsetを使用し、実装してみます。 オートロード設定 まずはauthパッケージを自動的に読み込むよう設定を行います。 fuel/app/config/config.php 'always_load' => a…
エラーメッセージ日本語化 前回作成したフォームで、FuelPHPの入力チェック時のエラーメッセージが、初期では英語の為、日本語化を行う。以下のサイトを参考にさせて頂いた。 FuelPHPのFieldsetでEメール送信 | WinRoad徒然草 設定 まずは『fuel/app/config/…
Fieldsetは、デザイン的な部分で融通が利かない可能性があるので、Formクラスでの実装を試してみる。以下のサイトを参考にさせて頂いた。 FuelPHP の Fieldset を使おう(Form の自動生成) - A Day in Serenity @ Kenji Controller ControllerでFieldsetの場…
checkboxのバリデーション 公式サイトのValidationを参考に、checkboxのバリデーションを行ってみた。 流れ バリデーション用クラスを用意 コントローラ側でバリデーション用クラスを呼び出し(add_callable) 該当のフォームにセット(add_rule) fuel/app/clas…
Fieldsetでのバリデーション 前回作成したフォームに対し、入力チェックを付けてみる。基本的には、addで作成したフォームに対しadd_ruleで、入力チェックルールを追加していく形。 例 $form->add('name', 'お名前', array('maxlength' => 8)); ->add_rule('…