[제나플러스] Shift-JIS 문자에 따른 php연결 대처방안 > 팁앤테크

본문 바로가기

사이트 내 전체검색

뒤로가기 팁앤테크

[제나플러스] Shift-JIS 문자에 따른 php연결 대처방안

본문

4. 文字化け対策

 このような文字化けの対策として、
以下のような対策が考えられます。
4.1. 日本語文字列の文字コードにShift-JISを使わない

 基本的にはShift-JIS以外の文字コードを用いれば、今回のような文字化けは起こらないので一番確実でしょう。しかし、仕事でプログラムを書いている人たちは諸々の事情からShift-JISを使用しなければならない状況があるかもしれません。
4.2. Magic Quote GPC機能をoffに設定する

設定方法:

    php.ini(PHPの設定ファイル)の項目
    magic_quotes_gpc = On
    をOffに書き直す。



 これで、GETやPOSTで文字列を受信しても勝手に「\」がつかないので、文字化け自体は起こらなくなるのですが、データベース登録時には注意が必要です。なぜならばSQLでよく使用される「’」や「”」などの文字にも自動で 「\」が付加されなくなるので、意図的にaddslashesなどの処理が必要になってきます。
addslashesの使い方:

    変数 = addslashes( "文字列" または変数 );



4.3. GETやPOSTで受信した文字列に「\」を取り除く処理を行う

 この場合は、Magic Quote GPC機能をonの状態で、GETやPOSTで受信した文字列に対して、stripslashes などで逐一余分に付加される「\」を取り除く処理を行っていきます。
stripslashesの使い方:

    変数 = stripslashes( "文字列" または変数 );



5. 最後に

今回の文字化けは、私がPHPで複数のページに渡って変数をやり取りするプログラムを作っているときに見つけたものです。納品直前で見つけてしまって、 結構あせりました。まだ納品前でよかったー。PHPでプログラムをする方、GETやPOSTで日本語を扱う際は、気をつけましょう。

추천0

댓글목록 0

등록된 댓글이 없습니다.

전체 285건 1 페이지
게시물 검색
Copyright (c) 株式会社YHPLUS. All rights reserved.

사이트 정보

株式会社YHPLUS / 대표 : ZERO
〒171-0014 東京都豊島区池袋2-41-5 アーバン154 8F
050-5539-7787
오픈카카오톡 (YHPLUS) :
https://open.kakao.com/o/slfDj15d

PC 버전으로 보기