ITコラム

PHP 文字列 関数

PHP

2019.06.21

PHP【文字列】便利な関数

PHP の文字列について、これまで explode 関数や sprintf 関数 等を紹介しましたが、PHP では その他にも文字列で使用できる様々な関数が用意されています。
今回は そのような関数のうちの幾つかを紹介します。

文字列についてはこちらの記事もご参照下さい。

PHP【文字列】文字列の連結
PHP【文字列】explode で文字列を分割
PHP【文字列】str_replace で文字列を置換
PHP【文字列】文字列の検索
PHP【文字列】文字列の比較
PHP【文字列】substr で文字列の抽出
PHP【文字列】数値に変換
PHP【文字列】strlen で文字列の長さを取得
PHP【文字列】trim で空白を削除
PHP【文字列】sprintf でフォーマット
PHP【文字列】エスケープ処理
PHP【文字列】全角と半角の変換
PHP【文字列】便利な関数(本ページ)

 
尚、本サイトでは XAMPP( ザンプ )という開発環境を使用しています。
XAMPP のインストール方法や起動方法については以下の記事をご参照下さい。
PHP【 開発環境 】XAMPP インストール
PHP【 開発環境 】XAMPP の使い方

最終更新日:2019年6月21日

目次

1.文字列を丸める mb_strimwidth
2.大文字⇔小文字変換の strtolower / strtoupper
3.埋め込み処理の str_pad
 

1.文字列を丸める mb_strimwidth

mb_strimwidth 関数は、指定した幅に文字列を丸める関数です。

次のように記述して使用します。

mb_strimwidth ( 文字列 , 開始位置 , 幅 ) ;

第 2 引数には、文字列の先頭文字を 0 としたインデックス番号を数値で指定します。
( 負の数値を指定すると、文字列の末尾からカウントされて先頭文字が特定されます。)

第 3 引数には、丸めた後の文字列全体の幅を、半角文字は 1 、全角文字は 2 でカウントして数値で指定します。

この他、第 4 引数として 丸めた後の文字列に追加したい文字列を指定することができ、第 5 引数として 文字エンコーディングを指定することができます(どちらも省略可能です)。
 

mb_strimwidth のサンプル

mb_strimwidth 関数を使用して 文字列の丸め処理をしてみます。

下記のようなソースファイルを作成して ブラウザからアクセスすると、次のような表示になります。
( ソースファイルの作成方法についてはソースファイルを作成を、サーバの起動方法等についてはサーバを起動を、それぞれご参照下さい。)

<?php

  echo mb_strimwidth("1234567890", 2, 6);
  echo "<br>";
  echo mb_strimwidth("1234567890", 2, 6);
  echo "<br>";
  echo mb_strimwidth("1234567890", 2, 6, "etc.");
  echo "<br>";
  echo mb_strimwidth("1234567890", 2, 6, "等々");

?>

第 4 引数に 追加文字列を指定した場合は、追加した文字列を含めた 丸め処理後の文字列全体の幅が、第 3 引数で指定した数値(半角文字は 1 、全角文字は 2 でカウント)となる点に注意が必要です。

▲目次へ戻る

 

2.大文字⇔小文字変換の strtolower / strtoupper

strtolower 関数は、指定した文字列のアルファベットを全て小文字にする関数です。
逆に、strtoupper 関数は、指定した文字列のアルファベットを全て大文字にする関数です。

次のように記述して使用します。

strtolower ( 文字列 ) ;
strtoupper ( 文字列 ) ;

 

strtolower 及び strtoupper のサンプル

strtolower 関数と strtoupper 関数を使用して アルファベットを小文字 又は 大文字に変換してみます。

下記のようなソースファイルを作成して ブラウザからアクセスすると、次のような表示になります。
( ソースファイルの作成方法についてはソースファイルを作成を、サーバの起動方法等についてはサーバを起動を、それぞれご参照下さい。)

<?php

  $str = "Hello World!";

  echo strtolower($str);
  echo "<br>";
  echo strtoupper($str);

?>

▲目次へ戻る

 

3.埋め込み処理の str_pad

str_pad 関数は、文字列を指定した長さまで他の文字列で埋める関数です。

次のように記述して使用します。

str_pad ( 文字列 , 長さ [, 埋め込む文字列 [, 位置 ] ] ) ;

第 3 引数には、埋め込む文字列を指定することができます。
指定しない場合は、第 2 引数で指定した長さになるまでスペースが埋められます。

第 4 引数には、埋め込む位置を STR_PAD_RIGHT(右)、STR_PAD_LEFT(左)、STR_PAD_BOTH(両側)で指定することができます。
指定しない場合は、右側が埋められます。
 

str_pad のサンプル

str_pad 関数を使用して 文字列の埋め込み処理をしてみます。

下記のようなソースファイルを作成して ブラウザからアクセスすると、次のような表示になります。
( ソースファイルの作成方法についてはソースファイルを作成を、サーバの起動方法等についてはサーバを起動を、それぞれご参照下さい。)

<?php

  $str = "12345";

  echo str_pad($str, 10);
  echo "<br>";
  echo str_pad($str, 10, "*", STR_PAD_LEFT);
  echo "<br>";
  echo str_pad($str, 10, "*", STR_PAD_BOTH);
  echo "<br>";
  echo str_pad($str, 10, "*-");
  echo "<br>";
  echo str_pad($str,  3, "*");

  echo "<br>";
  echo str_pad("全角",  10, "*");

?>

埋め込む文字列を指定しない場合はスペースで埋められ、埋め込む位置を指定しない場合は右側が埋められます( 分かりやすいように「 str_pad($str, 10); 」で埋め込み後の文字列の色を反転させてみました )。

埋め込む文字列のパターンがきれいに納まらない場合は、指定された長さでカットされます。

指定した長さが元の文字列の長さ以下の場合は、埋め込み処理が行われず 元の文字列がそのまま返ります。
負の数値を指定した場合も同様です。

全角文字は 1 文字の長さが 3 ( バイト )としてカウントされます。

▲目次へ戻る

SHARE

最新記事

img001

卒業生インタビュー

2019.08.28

【卒業生の声:田中さん】美容師からプログラマーへ転身!PCスキルゼロからチーム開発でリーダーを務めるまでに成長したその秘密に迫る

受講スクール プログラマカレッジ 受講期間 3ヶ月間 料金 無料 就職先 株式会社アニシス プログラマカレッジ卒業生の田中さんにお話しをお伺いしました! 目次 IT業界へ憧れ、PCスキルゼロからプログラマーを目指すー 独 […]

続きを見る

IMG_004

卒業生インタビュー

2019.08.20

【卒業生の声:渡邉さん】宮城の大学とプログラマカレッジへ通学を両立!限られた時間を有効活用し、希望するWEB系の会社へ内定。

受講スクール プログラマカレッジ 受講期間 3ヶ月間 料金 無料 就職先 某WEB系会社 プログラマカレッジ卒業生の渡邉さんにお話しをお伺いしました! 目次 新卒採用の切符を捨て、アイデアを形にできる仕事を目指す 質問が […]

続きを見る

無料相談する

INTERNOUS,inc. All rights reserved.