【php】文字列操作関数-まとめ-置換/検索/抽出/結合/空白除去
この記事からわかること
- phpの関数まとめ
- 文字列を操作できる関数
- 置換/検索/抽出/結合/空白除去
index
[open]
\ アプリをリリースしました /
友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-
posted withアプリーチ
phpで「文字列を操作できる関数」の中でもよく使うものを役割ごとに使い方や注意点などをまとめました。
文字の長さを取得する
strlen関数
引数に指定された文字の長さ(バイト数)を取得する関数。半角文字なら1バイト、全角文字(日本語など)は2バイトとして扱われます。
strlen("ame"); // 3
strlen("あめ"); // 4
strlen("あめとame"); // 9
返り値:int 文字列のバイト数
公式:strlen関数
mb_strlen関数
引数に指定された文字の長さ(文字数)を取得する関数。半角も全角も1文字として扱われる
mb_strlen("ame"); // 3
mb_strlen("あめ"); // 2
mb_strlen("あめとame"); // 6
返り値:int 文字列の文字数
公式:mb_strlen関数
文字列を指定文字で置換する
str_replace関数
対象文字列から検索する文字列を指定した文字に置換する関数。大文字と小文字は区別して置換する。引数に置換処理を行う回数も指定できる。
$str = "今日は晴れでした。";
$search = "晴れ";
$replace = "雨";
echo str_replace($search,$replace,$str);
// 今日は雨でした。
str_replace("検索する文字列","置き換える文字列","対象文字列","置換処理の回数");
返り値:string 置換済みの対象文字列
substr_replace関数
対象文字列の指定した範囲を置換する関数。引数で開始位置と長さを指定可能。長さの指定を省略すると文字列の最後まで全て置換される。開始範囲を0にすると文字の先頭に置換文字を追加できる。
$str = "Hello! World!";
$replace = "GoodNight!";
$offset = 0;
$length = 6;
echo substr_replace($str, $replace, $offset, $length);
// GoodNight! World!
substr_replace("対象文字列","置き換える文字列","開始位置"[,範囲] )
返り値:string 置換済みの対象文字列
文字列が文字列の中にあるかどうか
strpos関数
対象文字列の中に検索文字列があればその文字位置(先頭の位置)をなければfalseを返す。
$str = "今日は晴れでした。";
$search = "晴れ";
$result = strpos($str,$search);
// 文字列の先頭に該当文字があると0を返すので
// falseと===(厳格に比較)で識別する
if($result === false){
echo "見つかりませんでした";
}else{
echo $result."番目に見つかりました";
}
strpos(“対象文字列", “検索文字列” );
返り値:int 文字位置 or boolean false
公式:strpos関数
指定文字列が文字列の中にいくつ含まれているか
mb_substr_count関数
対象文字列の中に検索文字列がいくつ含まれているかを取得できる関数。
$str = "今日は晴れでした。";
echo mb_substr_count($str,"で");
// 1
mb_substr_count("対象文字列","検索文字列");
返り値:int 出現回数
文字列から文字を抽出する
substr/mb_substr関数
対象文字列の開始位置から文字を抽出する関数。引数に抜き出す文字数を指定可能で負数を与えると後ろ(右側)から数えて抜き出すことができる。
$str = "abcdefg";
echo substr($str,0,1); // a
$str = "今日は晴れでした。";
// マルチバイト対応
mb_substr($str,-2,1); // た
substr("対象文字列",開始位置,文字数)
返り値:string 抽出された文字列
公式:substr関数
公式:mb_substr関数
文字列型かどうか調べる
is_string関数
引数に指定されている変数のデータ型を調べ文字列型であれば真を返す関数。
if(is_string($input)){
// 文字列だった場合の処理
}
is_string($対象変数);
返り値:boolean 文字列ならtrue
公式:is-string関数
文字列前後の空白を除去する
trim関数
文字列前後のホワイトスペース(空白や改行など)を自動で除去してくれる関数。
trim($str);
trim($対象変数);
返り値:string 除去後の文字列
公式:trim関数
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。
おすすめ記事:PHP技術者試験(初級)を受けた感想とオススメ参考書