PHPの最近のブログ記事

ftruncate

| コメント(0)

操作するファイルをfopenの追記モード「a」で開かないと正常に動作しない。

file_get_contents

| コメント(0)

file_get_contentsはflockを行わない。
手軽にファイルを読み込みたいなら、file関数を使うべき。

mb_send_mailでの文字化け

| コメント(0)

PHP4では文字化けしなかったがPHP5で文字化けするようになった。
----------------------------------------------
mb_send_mail("masato_s@sb3.so-net.ne.jp", "Profile変更依頼".$member[2], $new_contents, "From: SFIDA");
----------------------------------------------

改善

----------------------------------------------
mb_language("Ja") ;
mb_internal_encoding("SJIS") ;
mb_send_mail("masato_s@sb3.so-net.ne.jp", "Profile変更依頼".$member[2], $new_contents, "From: SFIDA");
----------------------------------------------

PHPでの文字化け2

| コメント(0)

PHPでは、Magic Quotes GPC(GPCとはGet Post Cookieの意味)という設定があります。この設定をonにすると、「'(シングル・クォテーション)」や「"(ダブル・クォテーション)」、「\」(「\」)を含む文字列があると、GetなりPostで受信した文字列に対して自動的にエスケープしてくれるというものです。例えば「John's name」を「John\'s name」と処理してくれるため、データベースなどに登録する際にエラーにならないというものです。一見すると非常に親切そうですが、実は厄介な問題を孕んでいます。この章で述べたとおり、Shift_JISでプログラミングすると、「5C = \」が現れる文字が存在します。このような場合、「十和田湖」「能力」「申し込み」「表示」などの文字列はPOSTなりGETで受信するたびに、「十\和田湖」「能\力」「申\し込み」「表\示」などのようにエスケープされていますから、そのまま表示してしまうと不細工極まりませんので、必ず stripslashesしなければなりません。

このMagic Quotes GPCの問題を考えても、Shift_JISでプログラミングするのは、文字コード全般の知識を有している場合やi-モードサイトの構築などでどうしても避けられない場合などを除いては避けるべきです。(もちろんMagic Quotes GPCをoffにすれば、この問題は発生しません。あなたがサーバの管理者でない場合も、.htaccessで設定可能です。「php_flag magic_quotes_gpc off」とすればOKです。データベース登録時には、addslashesなどの処理が必要です。)

PHPでの文字化け

| コメント(0)

php.iniファイルのdefault_charsetの項目を記述する

例)
default_charset = EUC-JP

などのように

このアーカイブについて

このページには、過去に書かれたブログ記事のうちPHPカテゴリに属しているものが含まれています。

前のカテゴリはMySQLです。

次のカテゴリはWEBデザイン参考です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

  • 連絡先
Powered by Movable Type 5.01