2008-01-01から1年間の記事一覧

php_uname() を使ってみたい

PHP

よくわかんないけど、人生で一度だけでいいからこの辺の関数を使ってみたいとずっと思ってる。 php_uname() phpcredits() php_logo_guid() zend_logo_guid() で、先日 symfony で CSRF 対策をおこなうときに、 SALT とか何にするよ? ってなったときが絶好の…

PHPのオブジェクトへの変換を試してみた

PHP

PHP の変数って型キャストをすることでオブジェクトに変換できるのは知ってたんだけど、実際どの型がどうなるっていうのは把握してなかったので、ちょっと試してみた。結論から言うと、 いずれも stdClass のインスタンスとなる スカラー変数(bool, string, …

Swift Mailer4 のレポジトリに LICENSE.GPL が

symfony 推薦しまくりな一方、日本語圏ではあまり評判のよろしくない Swift Mailer ですが、どうも Swift Mailer のライセンスが GPL になりそうな気配。 LICENSE.GPLがいらっしゃる ソースコード冒頭部分にどう見てもGPLなライセンス条項 Swift Mailer3 を…

symfony 1.2 における Propel の Behavior のフックポイントまとめ(たぶん)

自分の手元で生成されたモデルクラスを基にまとめてみる。あくまで自分用なので環境によっては違ったりするかもね。 BaseObject クラス 対象メソッド フック名 備考 delete :delete:pre delete() の冒頭で呼ばれる。falseを返すと以降の処理をおこなわない。…

svn log の結果を各エントリ1行で出すスクリプト

svn log って下みたいな感じで出力されるけど、こうやって複数行で出されると grep とか sed とかしにくいのよね。 ------------------------------------------------------------------------ r9547 | ebihara | 2008-12-12 16:40:57 +0900 (金, 12 12 200…

オレオレPEARチャンネルサーバを立てる試み(成功?)

バージョン落としたらうまく行ったぜ。 Chiara_PEAR_Server 用のMySQLユーザを登録しておく ローカルの開発環境では root にパスワードを設定していないんですが、どうもパスワードなしはダメっぽいので、 $ echo "grant all privileges on *.* to pear@loca…

オレオレPEARチャンネルサーバを立てる試み(失敗)

みんな PEAR チャンネルサーバとか立てればいいと思うんだ。ということで、 Chiara_PEAR_Server を使ってサーバ立ててみますよ。 Chiara_PEAR_Server 用のMySQLユーザを登録しておく ローカルの開発環境では root にパスワードを設定していないんですが、ど…

symfony1.1.0 の clear-controller タスクにバグがありそうな件

symfony1.1.0 の clear-controller タスクにバグがありそうな件について。どういうバグかというと、 clear controller してくれないというバグです。タスクのコード(http://trac.symfony-project.org/browser/tags/RELEASE_1_1_0/lib/task/project/sfProjec…

SeleniumRC つかってみた

データの大量登録とかは SeleniumIDE を使ったりとかしていたんですが、たとえば URL の id 部分だけ変えるとかだとちょっと面倒だなということで、 SeleniumRC と PHPUnit を使ってみました。以下インストール手順。SeleniumRCインストール $ wget http://a…

開発環境セットアップメモ

CentOS5.2あたり。 インストール周りとかは省略。 /etc/httpd/conf/httpd.conf AliasMatch ^/sns/([^/+]+)/(.*)? /home/co3k/sns/$1/public_html/$2 <Directory "/Users/co3k/Sites/sns/*/public_html"> AllowOverride All Allow from all Options FollowSymLinks Indexes </Directory>dotfiles を co3k.org から落としてき…

PostgreSQL で、 ALTER TABLE によるカラム追加時に default と NOT NULL 制約を指定できない件

PostgreSQL 7.4.3 on i586-momonga-linux-gnu, compiled by GCC gcc (GCC) 3.2.3 (Momonga Linux 1.0 3.2.3-12m) にて確認しました。普通に以下のSQLを実行すると、 ALTER TABLE c_member_pre ADD COLUMN login_id varchar(255) NOT NULL default ''; こんな…

OpenPNE3 用の認証プラグインのひな形を作るぞ計画

昨日の16時くらいから、暑くて全然やる気出ないままダラダラと OpenPNE3 の認証をどうしようかということについて考えてましたあああああああ暑すぎる。今週の OpenPNE を書いてなかったりとか、もろもろやらなきゃいけないことやってない気がしますが、夏な…

OpenPNE3 の認証処理とかどうやっていこうか的な考察

E-mail、pneid、SlavePNE、OpenID など様々な認証をおこなわなければならないことを考慮 User で権限周りの情報を引っ張ってこれるようにしたい

OpenEBI, OpenPNEでsfFormを活用するときのためのメモ

OpenPNE で sfForm を活用するときにハマりそうなところとその対策について考えたので、個人的なメモ程度に書き残しておきます。実際に対処したりとかそういうことはこれからなので、まあ真に受けたりとかはしないでくださいというか。 「登録時は入力しない…

Symfony 1.1 は transition release

http://www.symfony-project.org/blog/2008/06/30/the-wait-is-over-symfony-1-1-released Symfony 1.1, as a transition release,おおう。

IE6で複数のクラスのセレクタの指定が効かない

CSS

泣いた。 .foo.bar { } これが効かないので、 .foo_bar { } んでもって、 <div class="foo foo_bar"> </div> こうした。

フィルタの実行順について

(縮小なし)コードレベルでは見ていませんが、デバッグ用のツールバーのログレベルでフィルタの実行順について確認してみました(ktaiIOFilter というのが独自に追加したフィルタです)。これを見る限りでは、 プレフィルタ ポストフィルタ RendarFilter 常に一…

PEAR ライブラリにインクルードパスを通す

「require_once() が許されるのは小学生までだよねー」とは思うものの、 PEAR::Net_UserAgent_Mobile はすごく秀逸なライブラリなので、使わない手はないだろうということで使うことにしたわけですが。 問題は、 symfony でどこでインクルードパスを通すべき…

とりあえず symfony1.1 の処理をざっくり追う

ProjectConfiguration::setup() で config/settings.yml で定義した値が読み込めなくて、じゃあどうすればいいんじゃいと思ったのがきっかけで symfony1.1 の処理をざっくり追ってみた。ざっくり書いたので間違っているかもしれませんが、もしなにかの役に立…

symfony1.1 のサブコマンドの補完関数を書いてみた

適当に symfony1.1 のサブコマンドの補完関数を書いてみた。こんな感じになります。 (縮小なし)引数とかサブコマンドの取る値とかはまったく考慮してない感じです。コードは以下。 #compdef symfony _symfony() { if ((CURRENT > 2)); then else compadd loc…

tracの拡張の仕組みを学びたい

trac って普段何気なく使えているから気づきにくいけど、よくよく考えたら拡張がすごく自然に機能している気がする。メインの機能や権限管理もかなりしっかりしているし、どういう作りになっているんだろう。設計とかちゃんと追ってみたいな。ということでし…

コード中の特定の文字列の置換がどうもしっくりこない

いつもこんな感じで置換しているのですが、 ack -l "dirty_name" | awk '{print "sed s/dirty_name/valid_name/g "$1" > "$1".tmp; mv "$1".tmp "$1}' | sh mv あたりがキモイのでなんとかしたい。

PHP4対応プログラムにおいて、ゲッターによるメンバへのアクセスを避けたい状況

PHP

PHP4では、 bar =& new Bar(); } function getBar() { return $this->bar; } } というクラスから生成されたインスタンス $foo の $bar の hello() というメソッドにアクセスしたい場合、 getBar()->hello(); とすると Fatal Error というちょっと信じられな…

OpenPNE_Imgリファクタリング中のクラス図を描いてみた

OpenPNE_Imgリファクタリング中のクラス図を描いてみました。使用したツールは昨日使ってみた UMLet です。コピペできないのが辛いところでしたが、 おおまかなデザインをUMLet上で決めておき、保存 生成されたXMLを直接書き換える これでサクサクといけまし…

zsh で (^^)/ が大量に続いたコマンドを補完しようとすると落ちる

※(^^)/数が少ない場合、file name too long というまあそうだよなというエラーが出る。 ※以下、数えやすいように適宜改行を入れた。 $ (^^)/(^^)/(^^)/(^^)/(^^)/(^^)/ (^^)/(^^)/(^^)/(^^)/(^^…

OpenPNE_Imgのクラス図を UMLet で描いてみた

またもやJavaアプリ UMLet で描いてみた。(縮小無し画像)こちらは struct などが独自の記法を使うことで表現でき、かなりお手軽なんですが、 生成された画像左側になぜか黒く太い線が 他からコピーしてきたテキストを貼付けることができない という欠点が。

OpenPNE_Imgのクラス図を Violet (Classic Version) で描いてみた

昨日使ってみた Visual Paradigm for UMLが高機能すぎるせいかもっさりしてたり不安定だったりしてたんで、シンプルな Violet (Classic Version) で描いてみました。ちなみにJavaアプリなのでクロスプラットフォームで動きますよ。 (縮小なし画像)最低限の…

OpenPNE_Imgのクラス図を描いてみた

OpenPNE_Img を目下リファクタリング中なわけですが、一段落ついたのでUMLでクラス図とか描いてみようかなとか思っています。というのも、コード中とか構造とかで気に入らないところが自分の中で漠然としているので、とりあえず図にしてはっきりさせたいので…

ある要素の子の一部を兄弟にしたいのだ

ある要素に含まれるテキストの一部が選択されている場合、選択されているテキストのみ、その要素に含まれないようにしたいなと思って色々試行錯誤しています。ちょっと言葉で説明するのが難しいのですが、 <strong>えびはらこうすけ</strong> というのがあって、このうちの「…

JavaScriptのベンチマークスクリプトを書いてみた

誰かやってそうな気がするけど。精度とかを気にする必要は全くなく、処理速度の目安を軽く知りたいだけなので、自分で書いてみた。 function OpenPNEBenchMark() { this.start = 0; } OpenPNEBenchMark.prototype.begin = function() { var now = new Date()…