名古屋(近辺)でsymfony勉強会をしたい

昨日、Twitterで@kopugさん、@murakami2641さんから「名古屋でsymfony勉強会があったらいいね」というような意見がありました。実は私自身も、名古屋でsymfony勉強会を立ち上げたいなぁと数ヶ月前から妄想はしていたのですが、一緒にやってくれるメンバーが…

symfonyユーザ会

symfony仲間と「日本symfonyユーザ会」なるものの設立を準備しています。 大雑把には、既存のsymfonyユーザーや、これからsymfonyを始める方々を支援するための活動をする組織、ということになりますが、特に既存のsymfonyユーザーが普段から感じている「困…

symfonyで自前のYAML設定ファイルを勝手に読み込ませるアイデア

昨日、Twitterで@massatさんが以下のようなことをつぶやかれていました。 ・ on Twitter: "sfConfigHandler まわりの挙動を変えるプラグインを書きたいのだが。余地がないぞ・・・。 #symfony" ・ on Twitter: "@vectorxenon config_handlers.yml に自前のym…

Lithiumコアライブラリのフィルターを見てみた

昨日の第49回PHP勉強会@関東 - events.php.gr.jpで、@yandoさんがLithiumの現状について発表されたそうで、そのスライドを見てみました。 http://blog.candycane.jp/archives/261 LithiumはCake PHPの流れを汲むフレームワークですが、PHP 4対応を捨てて先進…

symfony検定

symfony検定 - ゆっくり*ゆっくり というわけで、勝手に問題を考えてみます。 初級っぽいものを考えてみました。 symfonyにバンドルされている2つのORMコンポーネントは? 約20チャプターで構成されるsymfonyのチュートリアルで構築する仕事情報サイトの名称…

symfonyのプラグインコマンドのインストール先ディレクトリを変更する

Twitterで@okonomiさんから以下の発言がありました。 symfonyでEthnaのpear-local的なことはできるんかな。手動でパッケージ管理とか無理ですよ? *Tw*「symfony plugin:install -c pear.php.net --force-license -d pear」でPEARをインストールできた *Tw*@…

sfForm(BaseForm)派生クラス内でのsetup()やconfigure()についてのメモ

sfFormの派生クラス、例えばモデルクラスに対応するフォームクラスなどで、setup() メソッドが使われています。Base〜というクラスの setup() メソッドにデフォルトのウィジェットなどが定義され、このクラスを継承するクラスの configure() メソッドでウィ…

sfDoctrineGuardPluginについてのメモ

symfonyには次のようなサイトのユーザー管理機能をまとめたプラグインがあります ユーザーのログイン機能 ユーザー一覧をメンテナンスする管理画面 コマンドラインからユーザーの情報を編集する機能 未登録のユーザーがユーザー登録できる画面 パスワードを…

sfDoctrineGuardPluginのREADME翻訳

翻訳を載せておきますが、微妙に内容が間違っている部分もあるっぽいです。今回はそういった部分は修正せずに単純に翻訳してあります。翻訳ファイルはgithubに載せましたので、本家のライセンスにしたがってご自由に利用してください。 http://github.com/hi…

sfDoctrineGuardPluginの日本語用辞書ファイル

sfDoctrineGuardPluginのユーザー向け画面(管理画面を除く)のリソースを日本語化するための辞書ファイルです。 次の内容を「sf_guard.ja.xml」という名前で、/plugins/sfDoctrineGuardPlugin/i18n ディレクトリに保存してください。

DoctrineのSortableビヘイビアを使う場合

レコードをソート可能かつ、各レコードのソート順変更などの操作を可能にする「Sortable」というビヘイビアがありますが、いくつかの実装が存在するようです。 Doctrine公式に登録されているextension http://www.doctrine-project.org/extension/Sortable …

symfonyのタスクでデータベースを自動で選ぶようにする

symfony 1.3からDoctrineがデフォルトのORMになり、これに伴ってタスクのデフォルトのコードに「doctrine」という文字が埋め込まれるように変更されました。つまり、自前で作成したタスクをデータベースオプションを指定せずに実行した場合、「doctrine」と…

use_javascriptのオプション

symfonyのビューでJavaScriptファイルを動的に追加指定する場合、「use_javascript」ヘルパー関数を使います。 このヘルパー関数の3番目の引数でいくつかオプションを指定できます。 どういったオプションがあるのかは、実際にオプションが使われる「include…

SPLのsplFileObjectを拡張してエンコード変換できるようにしてみた

なにやらPHPでモダンがアツイ(何をいまさら)ようなので・・・。 モダンPHP勉強会を開催しました & 資料 - 肉とビールとパンケーキ by @sotarok PHPでテキストファイルを読み込む場合、内部はUTF-8だけどファイルはShift-JISって場合がたまにあり、読み込ん…

symfony 1.3/1.4でDoctrineモジュールを生成したときの変数名が変更された件

昨日、Twitterにて@odasukeさんがつぶやかれていたのを見て、その後気になったままだったので状況を調べてみました。結論としては、ごく最近symfony 1.3/1.4のDoctrineプラグインのコードが変更された影響だった、ということです。 該当する変更箇所:http:/…

カスタムコンフィグハンドラーを作った時のprod環境でのオートロード

カスタムコンフィグハンドラーを作り、そのファイルを特殊なディレクトリに配置しても、autoload.ymlで設定していればdev環境の場合は問題ありませんでしたが、なぜかprod環境にするとオートロードされずにエラーになってしまいます。この挙動はかなり昔のバ…

ArkのAdvent CalendarがJobeetな件

http://opensource.kayac.com/ja/projects/ark/advent/2009/ 1日目の記事を読んでみると、symfony使いとしては反応せざるをえません 24日間で作成するアプリケーションの名前は Jobeet です。これは PHP のフレームワークである symfony のチュートリアルと…

symfony 1.4でプラグインがインストールできない

早速自分で管理しているウェブサイトをsymfony 1.4で作り直そう(アップグレードではなくて)と作業を始めたのですが、いきなりプラグインのインストールでつまづいています。例えばフィード関係の出力やパースができるsfFeed2Pluginをインストールしようと…

2009年のsymfonyアドベントカレンダー「More with symfony」はすごい!

さて今年も12月になってしまいましたが、12月といえば最近では日本のプログラマー界隈(主にPerl)でもアドベントカレンダープロジェクトが広まってきましたね。symfonyは今年も本家でアドベントカレンダーが始まりました! http://www.symfony-project.org/…

ORMフォームで複合ウィジェットを使う

ここで説明するやり方はちょっと強引なやり方かと思います。 symfony的にはカスタムウィジェットを作成して使うのが綺麗なやり方だと思います。 以前のエントリで、複合ウィジェットをフォームで扱う方法を紹介しました。 複合ウィジェットの値の取得方法 - …

symfonyでHTTPリクエストパラメーターがsfWebRequestオブジェクトに渡されるところのメモ

factories['routing'] = new $class($this->dispatcher, $cache, array_merge(array('auto_shutdown' => false, 'context' => $this->factories['request']->getRe…

ついったーのアイコンにsymfonyアイコンをつける

Twitterで#symfonyのタイムラインを追っているのですが、アイコンの右上に「sf」マークが付いている人を結構見かけるんですよね。 「この人達はsensioの人なのか?」などと想像していたのですが、違いました。 Twibbonという、何かのファンであることをアイ…

symfony1.3のDoctrineモデルでgetter/setterのPHPDocコメントが生成されるようになった

以前、Doctrine(symfony 1.3 alpha + Doctrine)について調べた時、生成されたモデルクラスに各フィールド値に対応するアクセサメソッドが存在しない、ということを書きました。 Doctrineメモ - しんふぉにゃん 私は普段Eclipse + PDTでコード補完に頼りなが…

symfonyのタスクからログファイルにログを記録する

TwitterにてTakiTakeさんがつぶやいていたので、気になって調べてみました。 いろいろググッたところ、次のエントリが見つかりました。 http://arpeggios.wordpress.com/2008/08/15/logging-on-tasks/ エントリの内容を簡単にまとめると以下のような感じです…

symfony 1.2/1.3でタスクからヘルパーを利用する

symfony1.1までは、sfLoader#loadHelpersメソッドを使用してアクションやタスク内からヘルパーをアクティベートし、呼び出すことができました。 dfltweb1.onamae.com – このドメインはお名前.comで取得されています。 しかし、sfLoader#loadHelpersメソッド…

symfony 1.3付属のDoctrineで日付の扱いが少し楽に

同じく1.3のwats-newからもう1つ。 symfony 1.x legacy website http://www.symfony-project.org/tutorial/1_3/ja/whats-new Doctrineの節に「Date Setters and Getters」というのがありました。日付をDateTimeオブジェクト設定・取得できるヘルパーメソッド…

symfony 1.3のウィジェット系メソッドでメソッドチェーン(fluid interface)

symfony 1.3の日本語ドキュメント翻訳も始まって、ボチボチ公式サイトでも表示され始めるんじゃないかと思います。(翻訳作業をされている方、お疲れ様です。) 1.3の新機能についてまとめてある「whats-new」を読んでいて、1つ気になる機能があったのでピッ…

DoctrineとPropelのパフォーマンス比較

# 2009/09/23 22:45 Fivestarさんからコメントで教えていただいたDoctrineのINSERTについてテスト1に追記しました。 # 2009/09/24 01:03 Fivestarさんからコメントで教えていただいたDoctrineのQueryCacheについてテスト3に追記しました。 symfonyとしては「…

symfony1.3でタスクを生成すると、デフォルトで使用するORMがpropelになっている

symfony1.3ではデフォルトのORMがdoctrineなわけですが、タスクを生成してみると・・・。 addOptions(array( new sfCommandOption('application', null, sfCommandOption::PARAMETER_REQUIRED, 'The application name'), new sfCommandOption('env', null, s…

sfWebRequest::getHttpHeader()

リクエストのヘッダ情報を取得するメソッドがsfWebRequest::getHttpHeader()です。 公式サイトのAPIなどであまり説明されていないので、調べたことをメモ。 引数$name, $prefix 第1引数の$nameは、ヘッダ情報の名前です。 第2引数の$prefixは、ヘッダ情報の…