blog.ishinao.net

93月/07

PHP 5.2.1のPerl互換正規表現関数の非互換性?

$regex = '/^(?:\/(?:(?:(?:[^\W_]|[-_.!~*\'()])|(?:%[\da-fA-F]{2})|[:@&=+$,;])*))+$/';
$path = '/entry/http://anond.hatelabo.jp/20070223015821';
echo preg_match($regex, $path);

というコードをPHP 4.4.1/4.3.11/5.1.4で実行すると、preg_matchが1を返した。でも、PHP 5.2.1(複数環境)で実行したところ0を返した。

上記正規表現は、Zend_Uri_Httpの中でpath要素のバリデーションに使われているもの。この動作のせいで、1470.netに登録できないURIが発生しているというところまでは追いかけたんだけど、ここで追跡頓挫中。

PHP 5.2.0でPCREのバージョンを上げたらしいけど、そのせいで発生している問題なのか? 5.2.0で試せる環境がないんだよなー。何か情報持っている方いませんか。

PHPのバグレポートを調べたところ

Bug #40195 PCRE Version 6.7 04-Jul-06 seems to have a bugが怪しいかも。っつーか、PHP 5.2.2を待つかtrunkに上げるかの2択ですか。

このエントリーを含むはてなブックマークはてなブックマーク - PHP 5.2.1のPerl互換正規表現関数の非互換性? Share on Tumblr このエントリをつぶやくこのWebページのtweets
Filed under: 日記 No Comments
93月/07

Suunto t3の電池が切れた

height="160" width="160"
alt="" title="">
Suunto t3の電池が切れたので交換。買ったのは去年の10月だったから、週10時間を越えるようなペースで使っても、半年くらいは持つのね。電池の種類はCR2032。ちなみに電池が切れたのは本体の方で、乳バンド(センサー)の方はまだ大丈夫らしい。けど、最近微妙に反応が鈍いのは電池が弱っているからかな? あっちも交換しておくか。そういや電池が切れてから数時間経ってから電池を交換したけど、過去の履歴情報とかはちゃんと消えずに残っていてくれた。バックアップ電池もそれなりに持つらしい。

このエントリーを含むはてなブックマークはてなブックマーク - Suunto t3の電池が切れた Share on Tumblr このエントリをつぶやくこのWebページのtweets
Filed under: 日記 No Comments