PHP mb_convert_kana関数が動作しない時の対処方法
サーバーの環境によってmb_convert_kanaが正しく動作しない場合がありました。
受け取った"name_kana"の値を全角カタカナに変換するため、以下のコードを書きました。
テスト環境では第3引数なしで動作しましたが、別の環境に入れると動きませんでした。
もしやと思い、第3引数に値をセットした所、
面倒でも第3引数を意識して使いたいと思います。
mb_convert_kana関数
http://php.net/manual/ja/function.mb-convert-kana.php
string mb_convert_kana ( string $str [, string $option = "KV" [, string $encoding = mb_internal_encoding() ]] )
文字列 str に関して「半角」-「全角」変換を行います。 この関数は、日本語のみで使用可能です。
パラメータ
str
変換される文字列。
option
変換オプション。
以下のオプションを組み合わせて指定します。
省略します・・・
encoding
encoding パラメータには文字エンコーディングを指定します。省略した場合は、 内部文字エンコーディングを使用します。
string mb_convert_kana ( string $str [, string $option = "KV" [, string $encoding = mb_internal_encoding() ]] )
文字列 str に関して「半角」-「全角」変換を行います。 この関数は、日本語のみで使用可能です。
パラメータ
str
変換される文字列。
option
変換オプション。
以下のオプションを組み合わせて指定します。
省略します・・・
encoding
encoding パラメータには文字エンコーディングを指定します。省略した場合は、 内部文字エンコーディングを使用します。
注意点
受け取った"name_kana"の値を全角カタカナに変換するため、以下のコードを書きました。
mb_convert_kana($_REQUEST["name_kana"], 'KVCs');
テスト環境では第3引数なしで動作しましたが、別の環境に入れると動きませんでした。
もしやと思い、第3引数に値をセットした所、
mb_convert_kana($_REQUEST["name_kana"], 'KVCs', "EUC-JP");期待通りに動作しました。
面倒でも第3引数を意識して使いたいと思います。
コメント
コメントを投稿