2008-01-01から1年間の記事一覧
Zend Frameworkを使って、MVCフレームワークで開発しているとき、Zend_Filter_Inputを使ってフォームで入力された値のフィルタリングを行う処理を記述した時のメモ。以下のようなフォームで、入力された値についてチェックをかける場合。
前回設定した項目についてベンチマークをとりました。今回のテストケースは 通常のaccess_log(ファイル)に保存 BufferedLogsディレクティブをONにしたaccess_log mod_log_sql+MyISAMストレージエンジン mod_log_sql+Archiveストレージエンジン の4つです。そ…
栃木に栃木SCというサッカーチームがあるのですが、来年J2へ昇格することが決まりました。実は栃木出身で、結構前(6,7年前くらい)から年間パスとか買ったりしてひそかに応援していました。 今シーズンはJFL(J2の下部に当たるリーグ)で2位となり、昨日昇…
mod_log_sqlを使って、Apacheのアクセスログをmysqlに保存する設定をしたときのメモです。アクセスログを保存するmysqlのストレージエンジンには、前からずっと気になっていたARCHIVEストレージエンジンを使用しました。
gitのタグとブランチの基本操作を備忘録として書いておきます。タグ関連・タグを作成 $ git tag
tracで連携するリポジトリとして、subversionではなくgitを使う設定をしました。 今回はそのときの設定ログです。gitとtracの連携にはGit Plugin for Tracというプラグインを使いました。以下インストール手順です。
Zend Framework 1.6から追加されたZend_Domを使ってみました。 XPathだけではなく、CSSセレクタによるDOMドキュメントの問い合わせを行うことができます。以下のような感じでドキュメントを読み込ませてみました。
オープンソースのアンチウィルスソフトウェアであるClamAVをインストールしてみました。インストールClamAV用のユーザおよびグループを作成します。 # groupadd clamav # useradd -g clamav -s /bin/false -c "Clam AntiVirus" clamav
前回の続き。proxyサーバを経由してアクセスしている場合に、mod_deflateでコンテンツを圧縮して通信していると問題になるのがproxyのキャッシュです。アクセスによっては、gzip圧縮非対応のブラウザがgzipされたコンテンツを受け取ってしまうようなケースが…
mod_deflateを使って通信を圧縮する設定をします。 圧縮するコンテンツのタイプは、htmlとcss、javascriptを対象とします。ApacheのコンパイルApacheのバージョンは2.2.9を使用
MySQLのレプリケーションで、サーバをチェーン状もしくはピラミッド状に構成するような場合、あるスレーブサーバをを別のマスタとして設定する方法です。例えば、以下のサーバBのようなものを想定しています。
Zend_Feedを仕様すると、WebページのフィードをRSS形式とAtom形式で簡単に作ることができます。まずは配列形式でフィードデータを生成します。
ソースコードなどを管理するリポジトリをSubversionからgitへ移行する方法です。gitからSubversionへコミットを反映する方法も書きます。・Subversionリポジトリをgitリポジトリへ変換する方法git svn cloneコマンドを使ってSubversionリポジトリをクーロン…
Zend_Httpを使ってAPIからファイルをアップロードするプログラムを作ってみました。http://example.com/api/file_post というAPIがあって、これを使ってファイルをアップロードすると仮定しています。 コードは以下のようになっています。
FLV変換を行うために必要なコーデックのインストールも含めたffmpegのセットアップをしたときのメモです。今回はau携帯も対応させます。ubuntuのffmpegはコーデックが使えない状態でビルドされているので(特許の関係)自分でやる必要があるようです。動画の変…
前回で独自のビューヘルパークラスを作る方法がわかったので、今回は実際に作ることにします。作るヘルパーの内容は、自分も普段よく使っているもので、出力しようとする文字列の長さが指定したものより長い場合に、指定した長さで文字列を切り取って表示す…
独自のZend_Viewのビューヘルパーはいくつかのルールをみたせば簡単に作ることができます。 ヘルパー名とビューヘルパーのクラス名の最後の部分は同じにする(ただしMixedCaps方式) ビューヘルパーのクラスにはヘルパー名と同じ名前のpublicメソッドが定義さ…
分散バージョン管理システムのひとつ(他はよく知りませんが)にgitがあります。 分散バージョン管理システムだとローカルの環境でリポジトリをもつので、ローカル環境でファイルの追加や削除、コミットができて、さらにあとで他のリポジトリと同期を取ったり…
6月29日にMySQLウィークリーセミナーに参加してきました。 相変わらす、勉強会とかセミナーのまとめが遅いので反省です(PHP勉強会も残っているな。。。)。当初の予想通りやはり人気があったらしく、急拠2回にわけて開催されることになりました。 最初の申…
先日書いたZend_Auth_Storage_Interface.phpを実装したスクリプトをCodeReposにおいておきました。実装内容もさることながら、テストもあまりしていません。もし使えそうだったら使ってみてください。 ツッコミ大歓迎です。
UbuntuにSennaを使ってMySQLで全文検索を行うためのインストールを行いました。○MeCabインストール
cookieで認証情報を引き回したかったので作ってみました。まだまだ改良の余地がありますが、とりあえず公開してしまいます。本来はZend_Http_Cookieをうまく使いたかったのですが、Zene_Http_ClientやZend_Http_CookieJarから使われるのが前提のようなつくり…
もう先週のことですが、MySQLのウィークリーセミナーに行ってきました。無料セミナーで、しかも会社から徒歩数分の距離だったのでとてもよかったです。今回の内容はMySQLストレージエンジンについての内容でした。
今日インターフェースを実装するにあたり、実装する関数で引数にデフォルト値を設定できないかなーとか思いました。以下のような感じです。 php interface MyInterface { public function foo($val); }class ImplementedClass implements MyInterface { publ…
今回はZend_View_Interfaceを実装してSmartyに対応させたビューをZend_Layoutへ対応させてみようという試みです。 使用するSmartyのクラスはこれ(ViewSmarty)です。まずはZend_Layoutにviewを登録する方法ですが、以下のどちらかの方法でViewSmartyのクラス…
前回の続き。Zend_LayoutをZend FrameworkのMVCを利用して使用し、ビューを表示する例を書きます。 今回使用するファイルおよびディレクトリ構成は以下のようになっています。
Zend Framework 1.5からZend_Layoutが追加されています。興味はあったのですが、リファレンスガイドやその他ちょっと調べてもいまいち良くわからなかったので敬遠していましたが、このたびAkra's DevNotesのブログでとてもわかりやす解説を見つけて理解する…
Zend Frameworkを使ってMVCフレームワークで開発をしようとする場合、Zend Frameworkのリファレンスガイドではドキュメントルート直下に置いたindex.phpをフロントコントローラとして使います。そして本命のディスパッチ処理はもちろん、ビューやルータの設…
・新規バナーを追加する バナーの追加は「バナーの概要」画面から行うことができます。ここの画面までの行き方は以下のとおりです。 一覧→広告主名をクリック→キャンペーンの概要タブをクリック→キャンペーン名をクリック→バナーの概要タブをクリック一覧→広…
前回に引き続きZend_Config_Yaml.phpのようなものを考えてみました。 Yamlのパーサは前回挙げたPHP拡張モジュール SyckとPHPライブラリのspycに対応しています。 Zend_Config_Iniでは継承を示すトークンに「:(コロン)」を使っていましたが、Yamlで「:」は特…