hitoshop14 @ ウィキ

2バイト文字関数

最終更新:

hitoshop

- view
管理者のみ編集可

2バイト文字関数

  • ここでは、使用頻度の高い2バイト文字関数群の説明をします
  • 漢字やひらがな、全角カタカナなどの変換や文字列操作などはここで紹介する関数群で処理します
  • php.iniの設定を終了していなければ、使用できない可能性があります
  • 半角文字も全角文字もすべて1カウント

 

2バイト文字の関数

mb_strlen関数
機能と返り値 文字列の長さを返す.半角文字も全角文字の長さも1カウント
引数 第一引数は、長さを調べる文字列.第二引数は、「SJIS」「EUC-JP」[UTF-8]などの文字コード.省略可能
<?php
    $a = "PHP関数の勉強";
    print  mb_strlen($a, "SJIS");
?>

 

mb_strpos / mb_strrpos関数
機能と返り値 mb_strposは、引数の文字列内を検索し、指定した文字が最初に現れる位置を返す.mb_strrposは、最後に現れる文字位置(先頭からの文字位置)を返す
引数 第一引数に検索する文字列.第二引数に見つける文字
<?php
    $a = "PHP関数の勉強";
    print  mb_strpos($a, "の");
    print  mb_strpos($a, "数");
?>

 

mb_substr関数
機能と返り値 文字列から一部分を抜粋
引数 3つの引数で「元の文字列、取り出し開始位置、取り出す長さ」
<?php
    $a = "PHP関数の勉強";
    //4文字から5文字分を抜粋
    print  ms_substr($a, 3, 5);
    //先頭から6文字分を抜粋
    print  ms_substr($a, 0, 6);
?>

 

mb_convert_encoding関数
機能と返り値 文字列を指定した文字コードに変換.
引数 3つの引数で「元の文字列、変換先の文字コード、元の文字コード」
<?php
    $a = "PHP関数の勉強";
    //SJISをUTF-8に変換   
    $b = mb_convert_encodeing($a, "UTF-8", "SJIS");
    print  $b;
?>

◆ファイルの保存形式や、データベースから取得する場合にはDBの文字コード設定によっては文字化けが起こりやすいので、 チェックしましょう
◆htmlのmetaタグの設定でも文字バケを引き起こします.
<meta http-equive="Content-Type" content="text/htmlcharset=UTF-8">

私の場合は、すべての設定情報に関して[UTF-8]に統一する事にしています.
そうすることによって、文字化けに悩むことはなくなるからね.

mb_conver_kana関数
機能と返り値 全角文字と半角文字の相互変換
引数 第一引数に置換前文字列、第二引数に変換オプションを指定

<?php
    $a = "PHP関数の勉強(sample.php)";
    $b = "半角カタカナのデータ";
  
    print  mb_convert_kana($a, "R") . "<br />";     //半角英字→全角
    print  mb_convert_kana($a, "A") . "<br />";     //半角英数字→全角
    print  mb_convert_kana($b, "K") . "<br />";     //半角カタカナ→全角(濁音そのまま)
    print  mb_convert_kana($b, "HV") . "<br />";  //半角カタカナ →全角ひらがな(濁音を1文字にする)
?>

 

 

文字 変換内容
r 全角英字 → 半角英字
R 半角英字 → 全角英字
n 全角数字 → 半角数字
N 半角数字 → 全角数字
a 全角英数字 → 半角英数字
A 半角英数字 → 全角英数字
c 全角カタカナ → 全角ひらがな
C 全角ひらがな → 全角カタカナ
h 全角ひらがな → 半角カタカナ
H 半角カタカナ → 全角ひらがな
k 全角カタカナ → 半角カタカナ
K 半角カタカナ → 全角カタカナ
s 全角スペース → 半角スペース
S 半角スペース → 全角スペース
V 濁点付けの文字 → 1つの文字

 

 

 

 



 

 

記事メニュー
人気記事ランキング
目安箱バナー