PHP - よく使う関数 - 文字列 - 変換

クラウディア 
1. 概要
2. ord 文字を数値へ変換
3. chr 数値を文字へ変換
4. strto... 大文字小文字変換

1. 概要

 文字列と数値との相互変換や、大文字小文字の変換についてです。

2. ord 文字を数値へ変換

 「PHP: ord - Manual」参照。

ord(string $character): int
 説明には「文字列の先頭バイトを、0 から 255 までの値に変換する」と書いてありますな。  「PHP」なもので、「文字列の先頭バイト」という書き方をしておるわけで、文字列の先頭バイトしか意味を持ちません。  「C 言語」を知っている人であれば、「'0'」が「48」という値であることがわかると思います。  これと同じ効果を持たせるには、「PHP」の場合、明確な型定義が難しいので

ord('0')
 と書くことで、「48」という値を持たせることができます。

print(ord('0'));
 と書けば、下記のように出力されます。

48

3. chr 数値を文字へ変換

 「PHP: chr - Manual」参照。

chr(int $codepoint): string
 前項の逆です。  これまた、ややこしく「codepoint を符号なし数値と解釈することによって指定された文字を含む、 1文字からなる文字列を返します。」と説明されています。

print(chr(ord('0')));
 と書けば、下記のように出力されます。

0

4. 大文字小文字変換


strtoupper(string $string): string
strtolower(string $string): string
 引数で与えた文字のうちアルファベット部分を、「strtoupper」は小文字を大文字に、「strtolower」は大文字を小文字に変換して返します。

<?php
print(strtoupper('文字aなのbだよcäé'));
 というソースを書いて実行すると、下記の結果が得られます。

文字AなのBだよCäé
 面白いのは、アルファベット部分以外を無視するということで、ありがたいことです。  「『アルファベット部分』は現在のロケールにより決定されます」とのことで、「ウムラウト - Wikipedia」や「トレマ - Wikipedia」、「é」は、「ja_JP.UTF-8」環境では、変換されません。
earthcar(アースカー)