2008-01-01から1年間の記事一覧
TokyoTyrantが突然落ちてサービスが停止してしまいました。それも夜中の3時に。 たまたま別の問題が発生していて対応に追われていたので早めに気がつくことができました。 しかし、原因が全くつかめずTTの再起動を試みたり、出力ファイルやpidファイルに問題…
もしかして:mb_encode_mimeheaderローマ字入力のまま検索して悲しかったので、同じ間違いを犯した人がたどり着くことを望んで ここに記す。
factories.xmlで定義されるシステムクラスの初期化のタイミングが気になったので調べてみた。以下はfactories.xmlのコンパイルキャッシュです。 databaseManager = new AgaviDatabaseManager(); $this->databaseManager->initialize($this, array ()); $this…
DoctrineでhasManyした(1対多あるいは多対多の関係にある)レコードを複数joinすると劇的に遅くなります。 Doctrineがよしなにやってくれるかと思いきや単純にjoinしてしまうので、結果セットが爆発的に膨れ上がります。今回は5つほどjoinしたら1700行強返…
Agaviのコマンドで生成される.htaccessに書かれているmod_rewirteは RewriteRule ^$ index.php?/ [QSA,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule (.*) index.php?/$1 [QSA,L]これだとディレクトリが存在して…
政治の話題はmixiの方で書くようにしてましたけど、大垣さん同様に僕もこの件はとても重要な問題であると考えていますので、こちらでも取り上げさせてもらいます。僕はとりわけ、「虚偽認知」に対する罰則の甘さと「認知」に対する審査の甘さに危機感を持っ…
なかったので作ってみた * * @version $Id$ */ class BooleanValidator extends AgaviValidator { /** * Validates the input. * * @return bool * * @author MugeSo <mugeso@mugeso.com> */ protected function validate…</mugeso@mugeso.com>
Agaviに関する誤った脆弱性報告が出回っていたようです。ref:False Agavi Vulnerability Reports 簡単に言うとフランスのある代理店がAgavi-0.11を用いて制作した複数のサイトでディレクトリトラバーサル脆弱性が見つかり、これはフレームワーク外の実装に問…
ドイツのマインツで行われる国際PHPカンファレンス2008(International PHP Conference 2008)でAgaviの公演が行われるそうです。 是非とも行きたいところですが、何せドイツは遠い。 あと、参加するAgaviユーザのためにAgaviTシャツも用意しているそうです。…
Agavi-0.11.4がリリースされました。 以下リリースアナウンスの邦訳 今日は皆さんAgavi 0.11.4 がでました!これは0.11.3で導入されたサンプルアプリの問題やautoload.xmlへのクラス記入漏れといった諸問題の修正をおこなったメンテナンスリリースです。 ま…
Agavi-0.11でデフォルトアクション、ログインアクション、セキュアアクション、Error404アクションなどのシステムアクション(system-actions)の定義はsetting.xmlで行うが、ここではcontextによる分岐は例外テンプレートを除いては利用できない。 そこで、ど…
結構はまったので書いておきます。 docomo <a href="[普通のURL]" lcs="lcs">なんたら</a> au <a href="device:gpsone?url=[urlエンコードした絶対URL]&ver=1&datum=0&unit=0">なんたら</a> SoftBank <a href="location:auto?url=[普通のURL]">なんたら</a> ソフトバンクのURL指定が普通のURLなのにハマった。
一つ目にトラックバックが付いていたので補足 もう少し説明すると、半径 r の検索をするとして、UTM上で1辺 2r の外接矩形を求めますよね。 その矩形の四隅の点自体は、経緯度座標に戻しても、中心点から √2r の距離を持つ点として意味を持ちますが、いかん…
今回は昨日書いたexpand_by_meterについてもう少し考察してみたいと思います。 昨日書いたexpand_by_meterは与えられた点を一度最適なUTM上に射影し、UTM上でのバウンディングボックスを生成して再射影して元の座標系でのジオメトリを得るというものでした。…
via: ここギコ!:PostGISで1点からの半径検索は、UTMなりに変換してから検索するのがベストプラクティス?, ここギコ!:PostGISのGeospatial化大作戦 その3(デタラメ編) 最近、GISにかかわり始めたばかりなので間違いかもしれませんが、上記ふたつを元…
ということでベンチとった。
Windowsでphp_phar.dllを読み込んだ状態だと下記メッセージが表示されgo-pearが動かないです。 E:\Program Files\PHP>go-pear.bat phar "E:\Program Files\PHP\PEAR\go-pear.phar" does not have a signaturePHP Warning: require_once(phar://go-pear.phar/…
やあ、みんなAgavi 0.11.3RC1 がでたよ!このメンテナンスリリースはPEARパッケージ生成やgettextの複数形の取り扱いといった幾つかの小さな問題の修正と幾つかの新しい機能追加がなされています。 データベースハンドラは接続後に任意のSQL文を送れるように…
やあ、皆さん。1.0.0 beta 2 がでました!beta1リリースでの諸問題の修正と幾つかの変更や改良を行いました。大きい事柄を列挙します: モデルでアクション形式のドット記法(Foo.Bar.Baz)の追加 モジュール毎のconfig_handlers.xmlの追加 モジュール毎のオート…
0.11.3RC1と1.0beta2がそろってリリースされたようです。1.0beta2からはアクション・ビュー・モデルのそれぞれの命名規則が厳密化され、たとえばmodules/Foo/action/Bar/BazAction.class.phpに配置されるアクションの場合はFoo_Bar_BazActionという名前にす…
MobilePictogramConverterをPHP5に対応させたものを以前公開しましたが、全く動作確認をしていませんでした。今回はPHPUnit3によるテスト追加して一応動作確認を取ったのものを公開します。MobilePictogramConverter-1.2.0-php5
PHPで携帯の位置情報を扱うライブラリphpgeomobilejpを使ってみた。使い勝手がよさげ。ただ、format変換をかけたとき誤差が出るので注意が必要です。via: PHPで携帯位置情報を扱うライブラリ「Geomobilejp_Converter」を作りました
キャメルケースからsnake_case(アンダースコア)に変換するメモ 1) echo strtolower(preg_replace(array('/([A-Z]+)([A-Z][a-z])/', '/([a-z\d])([A-Z])/'), '$1_$2', $argv[1])), PHP_EOL; ?>
PHP5.3からは遅延静的束縛(Late Static Bindings)によって子孫クラスの静的メソッドを呼び出すことができるようになった。 同じことを5.3より前のバージョン*1で行う方法 = 5.3 (Late Static Bindings) echo '-- use sta…
ついに1.0系が来ました。とりあえずBETA1です。では早速アナウンスメール邦訳です。(一部、文が長かったので箇条書きに改めてあります。) こんにちは皆さん。3年強の開発の末、Agaviはついに最初の1.0マイルストーン 1.0.0 beta 1のリリースを迎えました! h…
Doctrineは検索結果が0件の場合falseを返してくることを思い出した。ということはこれだ find($user_id, Doctrine::FETCH_ARRAY) :? array('user_id'=>'anonymous'); ?>
そろそろそろそろ「?:演算子」について一言言っておくかに一言言っておくか最近、配列で利用する可能性のあるキーすべてをとりあえず初期化するようにしている。 null, 'enable_hoge'=>false, 'name'=>'nobody' ); ?> なので、 'anonymous', 'enable_hoge'=>…
今日でEOLを迎えたPHP4 今までありがとう。
MobilePictogramConverterを使おうと思った。ブログで報告されているバグがあるようなので修正してた。 それとPHP5的にグローバル定数ってどうなのよってことで、グローバル定数をMobilePictogramConverterクラスに取り込んでみた。 そして今、修正版を公開…
subversion-1.5からsvn:externalsに相対パスを使えるようになったというので使おうとして少しはまったのでメモ。エイリアスと参照先の順番が逆になっている。すなわち、相対パスを指定する場合、今まで同じレポジトリ内のprojectAからprojectBを/projectA/tr…