自社データベースの内容をECサイト用に編集するときにサイトによってhtml不可とかclassが使えないとかがあったのでphpで文字列の検索、切り取り、置換、削除などの文字列操作のまとめ。
今回は対象の中の特定文字列を置換、削除をする方法。
php関連記事
PHPのmb_send_mailでメール送信時に、はしご高「髙」やたつさき「﨑」など旧漢字や丸数字の日本語文字化け対策をする
MySQL/MariaDBのデータをPHP側で暗号化・復号する
phpで10進数と16進数、2進数、8進数の変換と0埋め表記
WordPressの条件分岐タグでページを判別する
PHPでpreg_splitの文字化けを回避しながらテキストを改行ごとに区切ってHTMLメールをつくる
WordPressテーマアップロード時に「辿ったリンクは期限が切れています。 もう一度お試しください。」と表示される
PHPで画像アップロード時に比率を保ったまま縮小する
phpで郵便番号を正規表現で3桁・ハイフン・4桁で出力するfunction
phpで電話番号のハイフンを正規表現で出力するfunction
str_replaceで文字列を置換
データの中にタグが使えないので<br>タグを改行コードに置換したい。
$data = 'モデル着用サイズ XS<br>'; $data = str_replace("<br>", "\n", $data);
上のパターンだと、
第1引数に検索する文字列の
を、
第2引数に第1引数を置換する文字列の改行コードを、
第3引数に適用したい文字列の$dataを指定します
str_replaceで文字列を削除
データの中にタグが使えないので<p>タグを削除したい。
$data = '<p>モデル着用サイズ XS</p>'; $search = array('<p>','</p>'); $replace = array('',"\n"); $data = str_replace($search, $replace, $data);
第1引数と第2引数は配列で指定することもできます。
データの中から複数消したい場合は配列で指定した方が早いですね。
str_replaceで配列の値を置換する
データの中にタグが使えないので<p>タグを削除したい。
$data = ['bag', 'shoes', 'wallet', 'bag', 'accessories']; $data = str_replace('bag', 'wallet', $data, $count);
str_replace関数は、配列の値を置換することもできます。
配列を置換する場合には第3引数に配列を指定します。
第4引数を指定すると、文字列を置換した回数が取得できます。
コメント