PHP

PHPだとこんな感じ?某一覧抽出

id:yutakikuchi氏のPythonのサンプルコードをPHPで実装するとこんな感じ?アダルトフィルタ実装に向けたA○女優リストの自動抽出 + α - Yuta.Kikuchiの日記

PhpStormで選択箇所のインデントを揃える方法

PhpStormで記述済みの箇所のインデントを揃える(Emacsの『indent-resion』/vimの『==』)方法のメモ 範囲選択後 メニュー) "Code" > "Auto-Indent Lines" ショートカット) Mac : control + option + "I" Windows : Control + Alt + "I"

FuelPHPでMongoDBを使用する場合のサンプル

設定については下記URL参照。 http://fuelphp.jp/docs/1.5/classes/mongo/introduction.htmlFuelPHPのMongoDBクラスを使用したデータ取得等のサンプル。想定バージョン : FuelPHP 1.5 instance where(array('type' => 1))…

VMwarePlayerを使用したPHP開発環境の構築手順

Linux初心者向けに、VMwarePlayerを使用した開発環境の構築手順をレクチャーする機会があったので、メモとして書き残しておきます。簡単に環境を用意したい場合、あらかじめserverを含んだイメージを使用するのが楽ですが、今回は勉強も兼ねてminimalのイメ…

PHPからMongoDBのAutoIncrementを使用する

MongoDBでfindAndModifyを使用したAuto Incrementの実装方法が公式サイトに載っています。Create an Auto-Incrementing Sequence FieldこれをPHPで実装する場合、以下のようになります。 Auto Increment用collectionの作成 あらかじめAuto Increment用のcoll…

AppFogで始めるFuelPHP

がっつり使ったわけではないので、とりあえず環境構築まで。 タイトルが変だけど、まーいいか。 AppFogのSIGN UP AppFogのアカウントが無いと始まらないので、http://www.appfog.com/にアクセスし、右上『SIGN UP』からAppFogのアカウントを作成します。 ア…

FuelPHPのAgentクラスが機能しない件

FuelPHPのAgentクラスは、デフォルト設定の場合、http://browsers.garykeith.com/stream.asp?Lite_PHP_BrowsCapINIからUA一覧を取得し使用していますが、このサイトが閉鎖したようで、 1.3以前のバージョンでAgentクラスをデフォルト設定で使用している場合…

FuelPHPのインストールから開発までの流れをおさらい

なんだかんだで毎回調べているような気がするので、 FuelPHPのインストールから諸々の下準備の流れをメモっておきます。以下を想定しています。 DocumentRoot : /var/www/html ProjectRoot : /var/www/sample FuelPHP Version : 1.3 1. FuelPHPのインストー…

FuelPHPのテンプレートコントローラでPC/スマホの出しわけ

FuelPHPでテンプレートコントローラを使用している場合に、PCとスマホでビューを出し分ける方法を検討。ベースとなるテンプレートは スマホ : views/template_sp.php スマホ以外 : views/template.php スマホからアクセスされた場合、parent::before()を実行…

FuelPHP + RedisでTwitterもどき

元ネタはこちら。ケーススタディ — redis 2.0.3 documentation上記ページの内容をFuelPHPで実装しました。 ※一部実装を変えている部分があります。ソースはこちら。https://github.com/mmat/fuelphp-redis-tweet ユーザー登録ページ 入力チェックを通過した…

FuelPHPのクエリビルダを表にまとめた

※Ver1.2の情報なので最新バージョンと合わない部分があるかもしれません...タイトルそのまま。FuelPHP1.2のクエリビルダ関連を表にまとめました。 SELECT // SELECT * FROM... \DB::select() // SELECT `hoge`, `fuga` FROM... \DB::select(column1, column2…

FuelPHPのSimpleAuthでACL(Access Control List)

FuelPHPのSimpleAuthのACLの概要は、以下のようになっています。 ロールを設定ファイルで管理 ユーザーではなく、グループに対しロールがひもづく 以下、設定例になります。 config $ vi app/config/simpleauth.php 設定対象は『groups』と『roles』になりま…

FuelPHPのテーマクラスのサンプル

Fuelphpのテーマクラスのサンプルです。 『active』を変更する事により、テーマの切り替えが可能です。 サンプル Config app/config/theme.php 'mytheme1', 'fallback' => 'default', 'paths' => array(APPPATH.'views'), 'assets_folder' => 'themes', 'vi…

FuelPHPのAgentクラスと拡張

FuelPHPのAgentクラスは、下記URLからブラウザ情報を取得し、これを元にプラットフォーム等の判定を行っています。http://browsers.garykeith.com/stream.asp?Lite_PHP_BrowsCapINI上記URLへアクセスは最初に1度のみで、それ以降はキャッシュとして保持され…

FuelPHPでRedisを使用する

FuelPHPには、標準でRedisクラスが用意されている為、特別な事をする必要はなく、そのままRedisへアクセスが可能です。例によって、ソート済みセット型を使用した、ランキング風のサンプルで試しました。以下は、ユーザー名と年齢のリストをソート済みセット…

FuelPHPのRestコントローラ

FuelPHPにはRestコントローラというものがあります。 使い方は簡単で、『Controller_Rest』を継承したコントローラを作成し、その中に処理を入れていくだけで、以下のフォーマットの出力が可能になります。 (core/classes/format.phpを見ると、jsonpやらyaml…

FuelPHPでページキャッシュ

FuelPHPでページを丸々キャッシュする方法を調べたところ、『fuel-pagecache』というのを作っている方がいたので、試してみました。fuel-pagecache) https://github.com/xavividal/fuel-pagecache以下のような動作になっています。 Templateコントローラで出…

ページャー(Pagination)のリンク表示数

FuelPHPでページャー(Pagination)に書いた通り、FuelPHP標準のPaginationでは、カレントページより前のリンク表示数は、『num_links』で設定した値 - 1を表示するようになっています。(後はnum_linksで設定した数)例) これを、出来ればカレントページ番号を…

FuelPHPでページャー(Pagination)

FuelPHPでページャー FuelPHP標準のPaginationを使用したページャーを実装してみます。想定バージョン) FuelPHP 1.3CodeIgniterの標準のページャーは、offsetがURLに入り、残念な感じになっていましたが、FuelPHPではそんな事はないようです。今回は、ページ…

FuelPHPのバージョン確認コマンド

FuelPHPバージョン確認方法 忘れそうなので、バージョン確認方法の個人的メモ。 $ cd {プロジェクトディレクトリ} $ php oil -v

FuelPHPで複数データベースの切り替え

FuelPHPで複数データベースを切り替える方法 FuelPHPでは複数データベースの切り替えが、CI同様、簡単に設定出来ます。参考) http://docs.fuelphp.com/classes/database/usage.html fuel/app/config/db.php まずは、DBのベース設定に対し、新しいデータベー…

FuelPHPでログイン機能をサクっと実装

SimpleAuthを使えば、簡単にログイン処理が実装出来てしまいます。 今回は手っ取り早く、Fieldsetを使用し、実装してみます。 オートロード設定 まずはauthパッケージを自動的に読み込むよう設定を行います。 fuel/app/config/config.php 'always_load' => a…

FuelPHPのエラーメッセージ日本語化

エラーメッセージ日本語化 前回作成したフォームで、FuelPHPの入力チェック時のエラーメッセージが、初期では英語の為、日本語化を行う。以下のサイトを参考にさせて頂いた。 FuelPHPのFieldsetでEメール送信 | WinRoad徒然草 設定 まずは『fuel/app/config/…

FuelPHPでフォーム作成 - Formクラス

Fieldsetは、デザイン的な部分で融通が利かない可能性があるので、Formクラスでの実装を試してみる。以下のサイトを参考にさせて頂いた。 FuelPHP の Fieldset を使おう(Form の自動生成) - A Day in Serenity @ Kenji Controller ControllerでFieldsetの場…

FuelPHPでcheckboxのバリデーション

checkboxのバリデーション 公式サイトのValidationを参考に、checkboxのバリデーションを行ってみた。 流れ バリデーション用クラスを用意 コントローラ側でバリデーション用クラスを呼び出し(add_callable) 該当のフォームにセット(add_rule) fuel/app/clas…

FuelPHPでフォーム作成2(Fieldset) - Validation

Fieldsetでのバリデーション 前回作成したフォームに対し、入力チェックを付けてみる。基本的には、addで作成したフォームに対しadd_ruleで、入力チェックルールを追加していく形。 例 $form->add('name', 'お名前', array('maxlength' => 8)); ->add_rule('…

FuelPHPでフォーム作成1(Fieldset)

フォームの自動生成やら入力チェック、値の保持等をやってくれるというFieldsetを試してみる。手始めに、出力されるHTMLを確認する為、入力チェック無しのフォームを生成 Controller Fieldsetのインスタンスを生成し、『add』でパーツを追加していく。 add('…

FuelPHPの設定

プロジェクト作成後、各種設定変更を行う。 DB設定 まずはDBの設定 $ cd /var/www/myproj/fuel/app/config $ vi development/db.php 『db.php』の記述内容が以下 array( 'connection' => array( 'dsn' => 'mysql:host=localhost;dbname=db_myproj', 'userna…

FuelPHPインストール

CodeIgniterがライセンス問題で先が見えなくなった為、 CodeIgniterからの移行組が多そうな雰囲気のFuelPHPを試してみる。試すのは以下の環境 CentOS 6.2 PHP 5.3.3 MySQL 5.5.22 FuelPHPインストール 『curl』と『git』をあらかじめインストール $ sudo yum…