PHP5.4:htmlspecialchars非互換仕様変更

PHP5.4.0から、htmlspecialchars関数のデフォルト文字エンコーディングがISO-8859-1(Latin-1)からUTF-8に変更されるとのこと。
≪PHP5.4のhtmlspecialcharsに非互換問題≫
http://blog.tokumaru.org/2011/11/php54htmlspecialchars.html

PHPって、結構簡単にこういった下位互換の無い変更をやってくれます。PHP5からPHP6とかいったメジャーバージョンアップならまだしも、マイナーバージョンアップで、なぜこういった事をするのか理解に苦しみます。オプションの追加とかなら理解できるけど、デフォルトの変更って場合によっては影響が大きいですよね。
上記、記事を見る限りでは、内部文字エンコーディングとしてUTF-8を使っている場合は、影響がないと読み取れるので、MyHome Portalには影響がないかもしれないけど。

MyHome Portalの場合、htmlspecialchars()を、そのままは使っていなくて、以下のような共通関数my_htmlspecialchars()を作ってそれをコールしているので、影響があるとしても、これを修正するだけで済みますが。
function my_htmlspecialchars($str) {
return trim(str_replace("\", chr(0x5c), htmlspecialchars($str, ENT_QUOTES)));
}
スポンサーサイト

はてなブックマークに追加 はてなブックマーク - PHP5.4:htmlspecialchars非互換仕様変更

theme : PHP
genre : コンピュータ

aタグを余白含めてクリッカブル+上下中央揃え

<a>タグを余白部分も含めてクリッカブルにするには、
display: block;
を使えば良いが、ブロック内で、上下(縦位置)中央揃えするための
vertical-align: middle;
とは相いれない。
複数行文字列も含めて、ブロック要素内で上下中央揃えをJavaScript/jQueryやCSSハックを使わずにIE6も含めてCCSだけで実現する現実的な方法のサンプルです。
方法は、<a>タグに、行数に合わせてpaddingを設定することです。
block-click2.gif
a {
display: block;
line-height: 16px;
...
}
.line1 a { padding: 40px 0; }
.line2 a { padding: 32px 0; }
.line3 a { padding: 24px 0; }

サンプル↓
http://2ndmytest.appspot.com/sample/block-click.html

スニペット集にも載せました。
http://memo.ok2nd.biz/?query=display%3A+block

もっとシンプルな方法がありましたら、お知らせください。

はてなブックマークに追加 はてなブックマーク - aタグを余白含めてクリッカブル+上下中央揃え

theme : CSSレイアウト
genre : コンピュータ

Ver.4.05:キーワードハイライトをJavaScriptで(2)

MyHome Portal Ver.4.05をリリースしました。
http://ok2nd.web.fc2.com/download.html

「カレンダー(一覧表示)」「ID管理」「利用ガイド」のキーワード検索時のキーワードハイライトがPHP処理だったのを、「メモ」「旅行記」と同様にjquery.highlight.jsを使用する方式に変更しました。

はてなブックマークに追加 はてなブックマーク - Ver.4.05:キーワードハイライトをJavaScriptで(2)

theme : JavaScript
genre : コンピュータ

プロフィール

ok.2nd

Author:ok.2nd
HomePage:
http://ok2nd.web.fc2.com/
Email: m.ok.2nd@gmail.com

最新記事
最新コメント
最新トラックバック
月別アーカイブ
FC2ブログランキング

FC2Blog Ranking

検索フォーム
カテゴリ
リンク
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
ユーザータグ