岩本隆史の日記帳(アーカイブ)

はてなダイアリーのサービス終了をうけて移行したものです。更新はしません。

PHP

PHP-users.jpのコンテンツを更新した

これですこれ。 http://php-users.jp/ 覚えてますか。「PHP-users.jpのコンテンツを更新する方法」という記事に書いたとおり、PHP-users.jpのコンテンツはGitHubで管理されています。そのリポジトリに対し、hidenorigotoさんから先日pullリクエストがあった…

htmlspecialcharsに関する素敵なお知らせ

外出のため確認が遅くなってしまったのですが、「htmlspecialcharsに関する残念なお知らせ」という記事で触れたバグレポートが、reopenされ、fixされました。「改善される見込みは薄い」という私の予測は外れたわけで、申し訳ないと思うと同時に、htmlspecia…

htmlspecialcharsに関する残念なお知らせ

「htmlspecialcharsのパッチ私案」に書いた件、バグレポートを出してみましたが、「すでに同じバグレポートがあるだろ」という理由により、あえなく却下されました。せめて先方が「同じ」とみなしているレポート番号ぐらいは示してほしくて、そのようにコメ…

htmlspecialcharsのパッチ私案

PHPのhtmlspecialchars関数について、文字エンコーディングの妥当性チェックが不充分であること、また場合によってはXSS攻撃が可能になることが、下記ふたつの記事で指摘されています。 htmlspecialcharsは不正な文字エンコーディングをどこまでチェックする…

第3回設計勉強会に参加した(発表も)

PHPのフレームワークを使った実際のプロジェクトでどういう風に設計し、その結果、どこが良かったか/いまいちだったかを皆で持ち寄って議論できればと思います。 第3回設計勉強会 - events.php.gr.jp という主旨の勉強会に、PHPのフレームワークを実際のプロ…

PHP-users.jpのコンテンツを更新する方法

今年5月に起こった空前のusers.jpブームとともに産声を上げ、5か月の潜伏期間を経たPHP-users.jpが、先日よりついに動き始めました。他の users.jp と同様、PHP初心者向けの情報を集約するのがサイトの目的です。PHP-users.jp は百式管理人の田口さんが作ら…

SquirrelMailがメールヘッダのcharsetを見ずに文字化けするのでパッチを書いた

Squirrel Mailのダメなところは、メールのヘッダに書いてあるコーディングの情報を全て無視して、WebのUIの言語設定をそのまま使うところだ。 http://stlabwww.ssi.ist.hokudai.ac.jp/yuhyama/squirrel-ja-charset.html 同意。こうした実装になっている理由…

例えば、PHPを避けたくなった

PHP

これは勉強になりました。 preg_replaceによるコード実行(T.Teradaの日記) 特に下記の点。 preg_replaceの第一引数がバイナリセーフでないこと e修飾子というものがあること 文字列リテラル内で関数が実行できること 2と3については、まず使わないから良い…

「Perlメモ」の排他制御ロジックをPHPに移植してみた

PHP

PHPにおける排他制御のベストプラクティスが分からなかったので、定評のありそうな「Perlメモ」の「排他制御(ファイルロック)をする」を移植してみました。誤りがあるかもしれませんので、お気づきの方はご指摘いただけると助かります。 './lockdir/', 'bas…

『WEB+DB PRESS vol.44』を読んだ

WEB+DB PRESS Vol.44作者: 鵜飼文敏,ミック,はまちや2,小飼弾,萩本順三,角田直行,きたみりゅうじ,小田慎一郎,河合太郎,大野道誉,宇野浩史,田中洋一郎,大塚知洋,nanto_vi,縣俊貴,岩澤直樹,下岡秀幸,山本陽平,伊藤直也,高井直人,永安悟史,角谷信太郎,高林哲,WE…

ENT_QUOTES脳?

builder編集部の大野です。初出時、2ページ目最下のソースコードにおいて、htmlspecialchars($_REQUEST ['my_name'])となっていましたが、特別な理由がない限りhtmlspecialchars($_REQUEST['my_name'], ENT_QUOTES)とすべきなので、第2引数を追加しました。…

第2回PHP懇親会に参加した

PHP

「第2回PHP懇親会」に参加しました。「全員でライトニングトーク」ということでしたので、私も発表してきましたよ。発表資料をアップしたので見たい方は見てちょ。 「htmlspecialchars($_GET['text']);」を読む id:amachangさんが作成された「s6」というプレ…

第2回PHP懇親会に参加登録した

PHP

昨年11月に好評を頂いたPHP懇親会をまた開催します。今回も前回同様参加者全員による発表(ライトニングトーク)を実施します。発表時間は前回の反省を踏まえて一人5分と大幅アップ!!発表する内容はPHPに関連する事をメインとして自己紹介など簡単な内容でかま…

参考書がいけないのかな

PHP

「ギークなお姉さんは好きですか 10日目 めぇるみぃ!! 【前編】」に掲載され「http://drop.s217.xrea.com/mail_input.php」で公開されているソースに脆弱性があるのは当該記事へのコメントやトラックバックで指摘されている通り。たとえばPHP_SELFはそのま…

タイムゾーンのリストを取得する

PHP

PHPにはサポートされるタイムゾーンのリストがある。PHP5.1.0以降ならtimezone_identifiers_list関数でこのリストが取得できる。だが、obsoleteなリストも含まれてしまうため、これらを除外したいケースもあるだろう。preg_grep関数を使えば正規表現で配列の…

XAMPP環境にPHPUnit3をインストールした

PHP

WindowsのXAMPP1.5.5環境にPHPUnit3をインストールしました。以下メモ。 cd "C:\Program Files\xampp\php" pear uninstall PHPUnit move pear\PHPUnit pear\PHPUnit1 pear channel-discover pear.phpunit.de pear install phpunit/PHPUnitもともとpear/PHPUn…