search
LoginSignup
1

More than 1 year has passed since last update.

posted at

updated at

Organization

【PHP】文字列関数まとめ

mb_strlen()やstrupper()は業務でも使っていましたが、その他の文字列関数についても調べてみたので、この機会にまとめてみました。

mb_strlen()

  • 文字列の長さを取得する。
  • マルチバイト文字(日本語)も1文字としてカウントされる。
  • バイト数の長さを取得したい場合は、後述のstrlen()を使用する。
$cnt = mb_strlen('test');
print $cnt; //4が出力される。

strlen()

  • 文字列の長さをバイト数で返す。
  • 日本語は文字エンコーディングによって1文字の長さが異なるので注意が必要。
  • UTF-8だと日本語1文字は3バイト。
$cnt = strlen('㈱simple-way');
print $cnt; //13が出力される。(日本語1文字で3バイト、半角文字10文字で10バイト)

mb_convert_kana()

  • 半角⇔全角の変換を行う。
  • 第2引数に下記オプションを渡すことで変換方法を指定。
オプション 内容
r 全角英字を半角に変換する。
R 半角英字を全角に変換する。
n 全角数字を半角に変換する。
N 半角数字を全角に変換する。
a 全角英数字を半角に変換する。
A 半角英数字を全角に変換する。
s 全角スペースを半角に変換する。
S 半角スペースを全角に変換する。
k 全角カタカナを半角カタカナに変換する。
K 半角カタカナを全角カタカナに変換する。
h 全角ひらがなを半角カタカナに変換する。
H 半角カタカナを全角ひらがなに変換する。
c 全角カタカナを全角ひらがなに変換する。
C 全角ひらがなを全角カタカナに変換する。
V 濁点付きの文字を一文字に変換する。
$str = '0 1 2 A B Cア イ う'."\n";
print mb_convert_kana($str,'r'); //0 1 2 A B Cア イ う
print mb_convert_kana($str,'n'); //0 1 2 A B Cア イ う
print mb_convert_kana($str,'a'); //0 1 2 A B Cア イ う
print mb_convert_kana($str,'akh'); //0 1 2 A B Cア イ ウ

$str = '0 1 2 A B Cガギグ'."\n";
print mb_convert_kana($str,'R'); //0 1 2 A B Cガギグ
print mb_convert_kana($str,'N'); //0 1 2 A B Cガギグ
print mb_convert_kana($str,'A'); //0 1 2 A B Cガギグ
print mb_convert_kana($str,'AHV'); //0 1 2 A B Cがぎぐ

strtolower()/strtoupper()

  • 文字列を大文字⇔小文字に変換します。
  • マルチバイト文字も変換したい場合は、後述のmb_strtolower()/mb_strtoupper()を使用する。
$str = 'ABCDA B C D';
print strtolower($str); //abcdA B C D

$str = 'abca b c ';
print strtoupper($str); //ABCa b c 

mb_strtolower()/mb_strtoupper()

マルチバイトを含む文字列を大文字⇔小文字に変換します。

$str = 'ABCDA B C D';
print mb_strtolower($str); //abcda b c d

$str = 'abca b c ';
print mb_strtoupper($str); //ABCA B C 

ucfirst()/lcfirst()

先頭の文字を大文字/小文字に変換する。

$str = 'abc';
print ucfirst($str); //Abc

$str = 'ABC';
print lcfirst($str); //aBC

参考にしたもの

公式リファレンス

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
1