str_ireplace( mixed $search, mixed $replace, mixed $subject[, int &$count] )

str_ireplace( mixed $search, mixed $replace, mixed $subject[, int &$count] )は、対象文字列「$subject」の中の、検索文字列「$search」に一致する部分文字列を、置換文字列「$replace」に置き換える組み込み関数。

検索文字列「$search」、置換文字列「$replace」、対象文字列「$subject」を、それぞれ配列で指定し、複数の置換を一括して行うこともできる。

str_replace( mixed $search, mixed $replace, mixed $subject[, int &$count] )と似ているが、大文字と小文字を区別しない点が異なる。

定義

多様な型 str_ireplace( 多様な型 $search, 多様な型 $replace, 多様な型 $subject[, 整数型 &$count] );

パラメータ

多様な型 $search

検索文字列を指定する。

検索文字列を格納した配列を指定することもできる。

大文字と小文字を区別しない。

多様な型 $replace

置換文字列を指定する。

置換文字列を格納した配列を指定することもできる。

多様な型 $subject

検索の対象となる文字列を指定する。

対象文字列を格納した配列を指定することもできる。

整数型 &$count

置き換えた部分文字列の個数を取得できる。

ここに指定した変数に格納する。

戻り値

対象文字列「多様な型 $subject」の中の、検索文字列「多様な型 $search」に一致した部分文字列を、置換文字列「多様な型 $replace」に置き換えた文字列を返す。

「多様な型 $subject」が、検索対象文字列を格納した配列の場合、置換後文字列を格納した配列を返す。

構文

検索文字列を置換

置換後文字列 = str_ireplace( 検索文字列, 置換文字列, 対象文字列 );

「対象文字列」の中の、「検索文字列」に一致した部分文字列を、「置換文字列」に置き換え、「置換後文字列」を返す。

検索文字列を置き換え、置き換えた部分文字列の個数を得る

置換後文字列 = str_ireplace( 検索文字列, 置換文字列, 対象文字列, 変数 );

「対象文字列」の中の、「検索文字列」に一致した部分文字列を、「置換文字列」に置き換え、「置換後文字列」を返す。

置き換えた部分文字列の個数を「変数」に格納する。

サンプル

検索文字列を置換

大文字小文字を区別しない点に注目。

<?php
$varSubject = 'color, Color, COLOR<br />';
echo str_ireplace( 'color', 'Red', $varSubject );
$varSubject = 'Color: %color%<br />';
echo str_ireplace( '%color%', 'Red', $varSubject );
?>

↓↓↓出力結果↓↓↓

Red, Red, Red
Color: Red

複数の検索文字列を置換

<?php
$varSubject = 'Price: %price%<br />Color: %color%<br />Size: %size%<br />';
$arraySearch = array( '%price%', '%color%', '%size%' );
$arrayReplace = array( '2,000円', 'Red', 'M' );
echo str_ireplace( $arraySearch, $arrayReplace, $varSubject );
?>

↓↓↓出力結果↓↓↓

Price: 2,000円
Color: Red
Size: M

複数の検索文字列を置き換え、置き換えた個数を得る

<?php
$varSubject = '色は、%color%、サイズは、%size%サイズ。<br />Price: %price%<br />Color: %color%<br />Size: %size%<br />';
$arraySearch = array( '%price%', '%color%', '%size%' );
$arrayReplace = array( '2,000円', 'Red', 'M' );
echo str_ireplace( $arraySearch, $arrayReplace, $varSubject, $varCount );
echo "{$varCount}個の文字列を置き換えました。";
?>

↓↓↓出力結果↓↓↓

色は、Red、サイズは、Mサイズ。
Price: 2,000円
Color: Red
Size: M
5個の文字列を置き換えました。

複数の対象文字列の、複数の検索文字列を置換

<?php
$arraySubject = array(
    "値段は、%price%。<br />",
    "色は、%color%、サイズは、%size%サイズ。<br />",
    "Price: %price%<br />Color: %color%<br />Size: %size%<br />"
);
$arraySearch = array( '%price%', '%color%', '%size%' );
$arrayReplace = array( '2,000円', 'Red', 'M' );
$arrayReturn = str_ireplace( $arraySearch, $arrayReplace, $arraySubject, $varCount );
foreach ( $arrayReturn as $value ) {
    echo $value;
}
echo "{$varCount}個の文字列を置き換えました。";
?>

↓↓↓出力結果↓↓↓

値段は、2,000円。
色は、Red、サイズは、Mサイズ。
Price: 2,000円
Color: Red
Size: M
6個の文字列を置き換えました。

HTMLタグ内の検索文字列を置換

<?php
$varSubject = '<p style="color: %color%;">サンプル</p>';
echo str_ireplace( "%color%", "red", $varSubject );
?>

↓↓↓出力結果↓↓↓

<p style="color: red;">サンプル</p>

HTMLタグ内の複数の検索文字列を置換

<?php
$varSubject = '<p style="color: %color%; font-size: %size%;">サンプル</p>';
$arraySearch = array( '%color%', '%size%' );
$arrayReplace = array( 'red', '20px' );
echo str_ireplace( $arraySearch, $arrayReplace, $varSubject );
?>

↓↓↓出力結果↓↓↓

<p style="color: red; font-size: 20px;">サンプル</p>

複数のHTMLタグ内の複数の検索文字列を置換

<?php
$arraySubject = array(
    "<p style=\"color: %color%; font-size: %size%;\">サンプル1</p>\n",
    "<p style=\"color: %color%; font-size: %size%;\">サンプル2</p>\n",
    "<p style=\"color: %color%; font-size: %size%;\">サンプル3</p>\n"
);
$arraySearch = array( '%color%', '%size%' );
$arrayReplace = array( 'red', '20px' );
$arrayReturn = str_ireplace( $arraySearch, $arrayReplace, $arraySubject, $varCount );
foreach ( $arrayReturn as $value ) {
    echo $value;
}
echo "{$varCount}個の文字列を置き換えました。";
?>

↓↓↓出力結果↓↓↓

<p style="color: red; font-size: 20px;">サンプル1</p>
<p style="color: red; font-size: 20px;">サンプル2</p>
<p style="color: red; font-size: 20px;">サンプル3</p>
6個の文字列を置き換えました。

スポンサード リンク

カテゴリー: PHP, 文字列, 検索, 組み込み関数, 編集, 置換, 配列 タグ: パーマリンク