PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのmb_convert_case()関数で文字列の大文字・小文字を変換する方法

mb_convert_case()は、PHPに組み込まれている関数の一つで、指定した文字列に対して大文字・小文字の変換(ケースフォールディング)を行うために使用されます。マルチバイト文字列にも対応しているため、日本語などのマルチバイト文字を含む文字列を扱う際にも安心して利用できます。

構文

string mb_convert_case(str $string, int $mode, str $encoding)

パラメータ

mb_convert_case()は、文字列のケース変換を行うために$string$mode$encodingという3つの引数を受け取ります。

  • $string: 変換対象となる文字列を指定します。

  • $mode: 変換モードを指定します。以下のモードが利用可能です。

    • MB_CASE_UPPER(すべて大文字に変換)
    • MB_CASE_LOWER(すべて小文字に変換)
    • MB_CASE_TITLE(各単語の先頭だけ大文字に変換)
    • MB_CASE_FOLD(比較用に正規化された小文字に変換)
    • MB_CASE_UPPER_SIMPLE / MB_CASE_LOWER_SIMPLE / MB_CASE_TITLE_SIMPLE / MB_CASE_FOLD_SIMPLE(シンプルなマッピングによる高速な変換)
  • $encoding: 文字エンコーディングを指定します。省略またはnullが指定された場合は、内部文字エンコーディングの値が使用されます。

戻り値

mb_convert_case()は、指定されたモードで変換された文字列を返します。

注意: PHP 7.3.0以降では、MB_CASE_FOLD、MB_CASE_UPPER_SIMPLE、MB_CASE_LOWER_SIMPLE、MB_CASE_TITLE_SIMPLE、MB_CASE_FOLD_SIMPLEといった新しいモードが追加されました。

例1:大文字・小文字への変換

<?php
    $string = "Hello World!, Welcome to the online Tutorial";

    // 文字列をすべて大文字に変換
    $string = mb_convert_case($string, MB_CASE_UPPER, "UTF-8");
    echo $string;

    // 文字列をすべて小文字に変換
    $string = mb_convert_case($string, MB_CASE_LOWER, "UTF-8");
    echo $string;
?>

出力結果

HELLO WORLD!, WELCOME TO THE ONLINE TUTORIALhello world!, welcome to the online tutorial

例2:タイトル形式とシンプル変換モードの使用

<?php
    $string = "Hello World!, Welcome to the online Tutorial";

    // MB_CASE_TITLEを使用(各単語の先頭を大文字に)
    $string = mb_convert_case($string, MB_CASE_TITLE, "UTF-8");
    echo $string;

    // MB_CASE_UPPER_SIMPLEで大文字に変換
    $string = mb_convert_case($string, MB_CASE_UPPER_SIMPLE, "UTF-8");
    echo $string;
?>

出力結果

Hello World!, Welcome To The Online TutorialHELLO WORLD!, WELCOME TO THE ONLINE TUTORIAL

このように、mb_convert_case()関数を使えば、マルチバイト対応の柔軟な大文字・小文字変換を簡単に実装できます。通常のstrtoupper()strtolower()と異なり、UTF-8などのエンコーディングを明示的に指定できるため、国際化対応のアプリケーション開発において特に有用です。

  1. PHPで配列のキーをリセットする方法【array_values()関数の使い方】

    PHPでは、array_values()関数を使うことで、配列のキーを簡単にリセット(振り直し)できます。この関数は、元の配列からすべての値を取り出し、0から始まる連番の新しいキーを割り当てた配列を返します。 array_values()関数とは array_values()は、文字列キーを持つ連想配列や、飛び飛びの数値キーを持つ配列など、任意のキー構成の配列を受け取り、値だけを抽出してインデックス(0, 1, 2, ...)を振り直した新しい配列を返す組み込み関数です。元の配列そのものは変更されず、結果は新しい配列として返される点に注意してください。 例1:文字列キーの配列をリセットする ま

  2. PHPでランダム文字列を生成する方法【初心者向けサンプルコード付き】

    PHPでランダムな文字列を生成するには、いくつかの方法があります。本記事では、md5() 関数と mt_rand() 関数を組み合わせたシンプルな手法と、PHP 7以降で利用できる暗号学的に安全な random_bytes() 関数を使った方法を、サンプルコードと実行結果とともに解説します。 例1:md5() と mt_rand() を組み合わせる方法 mt_rand() で生成した乱数を md5() でハッシュ化し、substr() で先頭5文字を切り出すことで、ランダムな文字列を作成します。 <?php    $res = substr(md5(mt_rand()