2011年11月7日月曜日 PHP5.4のhtmlspecialcharsに非互換問題 PHP5.4.0から、htmlspecialchars関数のデフォルト文字エンコーディングがISO-8859-1(Latin-1)からUTF-8に変更されます。これに伴い、従来動いていたアプリケーションが動かなくなるケースが出てきます。典型的には、以下の両方の条件に該当するアプリケーションは、マルチバイト文字が表示されなくなります。 内部文字エンコーディングとしてEUC-JPまたはShift_JISを用いている htm... > このページを見る
最終更新時間:
2011年11月07日08時29分
このエントリーに含まれている商品
改訂版 今すぐ導入!PHP×PostgreSQLで作る最強Webシステム (Gihyo Expert Books)
-
¥ 3,024在庫あり。 価格表示について価格は、記載された日付/時刻の時点において正確です。価格は変更される場合があります。購入時にAmazonウェブサイトに表示されている価格が、その商品の販売に適用されます。
-
- 出版社/メーカー:技術評論社(大型本)
- 発売日:2009/06/27
- Amazon.co.jp 商品ランキング:350,401 位
みんなのブックマーク 人気(10) 新着
-
php.iniとかで指定できたりしないんだ…。
4 RT
- mbstring.internal_encoding=UTF-8にするのって、そんなに「一筋縄ではいかない」ですか?
-
日記書いた
20 RT
-
trunkを監視してみると、未だに文字コード周り変更入ってるし(といっても常に規格更新されるわけだしいいのだろうけど)、mb_*** のあたりの変更だけはなるべく社内共有したほうがいいな
-
文字コードに泣かされる人多いね( ・´ω・`) - 徳丸浩の日記: PHP5.4のhtmlspecialcharsに非互換問題:
-
ご注意
-
「(1)プログラムを修正してhtmlspecialchars関数の第3引数を明示する」が一筋縄じゃない理由が不明。機械的処理で済むし、後方互換性も問題ないよね。
- 西洋製のオープンソースプロジェクトとかの自動的な日本語(など)対応がまた進むので良い仕様変更だと思う
- PHP使うときは全部ラッパー経由で標準関数呼ぶようにしたほうが良さそうだな
- 「PHP5.4.0から、htmlspecialchars関数のデフォルト文字エンコーディングがISO-8859-1(Latin-1)からUTF-8に変更」mbstring.internal_encoding / 仕様がない
-
これだ。WARNINGやNOTICEも無く問答無用で空文字返してくるとかもういきなりツンデレ。 ◆徳丸浩の日記: PHP5.4のhtmlspecialcharsに非互換問題
-
UTF-8で作っていれば問題はないんだろうけど、htmlspecialcharsの第三引数は絶対指定するって認識の方がやっぱりいいね
-
mb_substrとかでも第4引数を指定してないコードのお陰でサーバ移行時に死にそうになった事あるわ。引数は出来る限り指定しておいたほうが無難。
-
うみゅ☆ これは UTF8 移行前に構築して放置してるところにはくりーんひっとしそうなのです...〆(・x【みかん
-
PHP5.4のhtmlspecialcharsに非互換問題
-
PHPが糞って言われんのはこういうところなんだろうけど。
2 RT
-
大事なのであとでまた読む。
-
EUC-JPもしくはShift_JISを使ってて、第3引数を指定していない場合、従来と動作が異なる。メモ。
- また非互換ですかー。何となく今でもh()作って誤魔化してるなぁ
- 5.4.0以降とそれ以前の非互換性
-
自前でラッパー書くのが現実解かもしれないけどそれはそれでなんかhx53() hx54() hx55()みたいに増殖する未来が見えてなんともいやだなあ(笑)←包括したラッパー書けよ
-
ギョッとしながら読んだが追記部分で一息ついた感じ。とはいえ影響はでかいなー。
- 構築の際の参考に
- PHP使うときは全部ラッパー経由で標準関数呼ぶようにしたほうが良さそうだな
-
お、おう…
- それはともかく、PHPコミュニティって「htmlspecialchars」って長ったらしい関数が受け入れられてる現状に疑問を持たないの…
-
影響大きそうだな。
- 西洋製のオープンソースプロジェクトとかの自動的な日本語(など)対応がまた進むので良い仕様変更だと思う
-
徳丸浩の日記: PHP5.4のhtmlspecialcharsに非互換問題
-
PHPはそろそろreal_htmlspecialchars的なものを作るべきなんじゃないだろうか。










