文字列の変換

PHPのシンタックス

  1. HOME
  2. 文字列の変換

全角・半角/ひらがな・カタカナの変換

文字を変換する
mb_convert_kana(変換対象の文字列,option,encoding)

encodingの文字エンコーディングは省略した場合は内部エンコーディングが採用されます。
オプション 変換
r 全角英字 ⇒ 半角英字
n 全角数字 ⇒ 半角数字
a 全角の英数記号 ⇒ 半角の英数記号
s 全角スペース ⇒ 半角スペース
R 半角英字 ⇒ 全角英字
N 半角数字 ⇒ 全角数字
A 半角の英数記号 ⇒ 全角の英数記号
S 半角のスペース ⇒ 全角のスペース
h ひらがな ⇒ 半角カタカナ
C ひらがな ⇒ 全角カタカナ
H 半角カタカナ ⇒ ひらがな
c 全角カタカナ ⇒ ひらがな
k 全角カタカナ ⇒ 半角カタカナ
K 半角カタカナ ⇒ 全角カタカナ
V 濁点付きの文字を1文字に変換する

文字の変換

Hello! PHPをはじめよう。
HELLO! PHPをはじめよう。
カツマルカンジュウロウ
カツマルカンジュウロウ
<?php
$msg1 = "Hello! PHPをはじめよう。";
$msg2 = "HELLO! PHPをはじめよう。";
$name = "かつまるかんじゅうろう";
$hankana = mb_convert_kana($name,"h");
$zenkana = mb_convert_kana($name,"C");
echo mb_convert_kana($msg1, "as"),"<br>",PHP_EOL;
echo mb_convert_kana($msg2,"AS"),"<br>",PHP_EOL;
echo $hankana,"<br>",PHP_EOL;
echo $zenkana,"<br>",PHP_EOL;
?>

英文字の大文字・小文字の変換

半角の英文字は strtoupper()で小文字を大文字に変換
strtolower()で大文字を小文字に変換できる
unfirst()は英文の先頭の文字を大文字にする
ucwords()は英文に含まれている単語の先頭の文字を大文字にします。

英文字の変換

APPLE IPHONE
apple iphone
<?php
$alphabet = "Apple Iphone";
echo strtoupper($alphabet),"<br>",PHP_EOL;
echo strtolower($alphabet),"<br>",PHP_EOL;

不要な改行や空白を取り除く

フォームに入力されたテキストの先頭や末尾の不要な空白や改行を取り除く関数
trim()先頭と末尾
ltrim()が先頭、rtrim()が末尾の除去

※初期値では全角空白を取り除けない。第2引数に取り除きたい文字を指定することが出来る。
全角空白を取り除くには第2引数に "\x20\t\n\r\o\v " ※最後の空きは全角空白です

不要な文字の取り除き

処理前:
[ タブと改行を入れてるよ!! ]
処理後:
[タブと改行を入れてるよ!!]

※ソースではタブと改行されている
<?php
$tabu = "\tタブと改行を入れてるよ!!     \n\n";
$result = trim($tabu);
echo "処理前:\n";
echo "[", $tabu, "]\n";
echo "処理後:\n";
echo "[", $result, "]\n";

その他の文字変換

htmlspecialchars() &から始まる文字列(エンティティ)に置き換える
第2引数でENT_QUOTES指定でシングルとダブルクォートの両方変換。デフォルトはダブルクォートのみ
strip_tags() HTMLタグが含まれた文字列を全て取り除く
rawurlencode() URLエンコード
空白文字は%20に変換
urlencode() URLエンコード
空白文字は+に変換
rawurldecode() rawurlencode()でエンコードされた文字をデコード
urldecode() urlencode()でエンコードされた文字をデコード