在之前的文章《PHP怎么將某長度的子串換成*號》中我們介紹了一種字符串替換的方法。這次我們再介紹一種進(jìn)行字符串替換的方法,看看這種方法如何將給定子串換成*號。
上文介紹的方法是給出替換開始的位置和替換長度,來進(jìn)行字符串替換。本篇文章給大家介紹另一種方法:直接給出需要替換的子串來進(jìn)行替換,因?yàn)槭侵苯釉O(shè)置替換子串,會有大小寫的問題,也就分為兩種情況:大小寫敏感和大小寫不敏感。今天先介紹對大小寫敏感的替換方法。
我們來看看下面一個例子:
<?php $str = 'hello,world,Hello,World'; $replace = '*'; $search1 = 'hello'; $search2 = 'world'; echo str_replace($search1, $replace, $str)."<br>"; echo str_replace($search2, $replace, $str)."<br>"; ?>
觀察一下上面的代碼,我們需要將字符串$str
中的“hello
”和“world
”值替換成*
號;而$str
字符串“hello,world,Hello,World
”中分別有兩種替換子串,區(qū)別只在于首字母是否大小。
因?yàn)槭褂玫氖莝tr_replace()函數(shù)來進(jìn)行字符串替換,該函數(shù)對大小寫敏感,區(qū)分大小寫,因此只在字符串$str中
搜索“hello
”和“world
”值,并分別將它們替換為*
號。所以輸出結(jié)果為:
了解了如何區(qū)分大小寫的將給定子串換成*號。下面我們來了解一下實(shí)現(xiàn)這個功能的函數(shù)str_replace()。
str_replace($search,$replace,$string,$count)
函數(shù)可以區(qū)分大小寫的替換字符串中的一些字符;該函數(shù)接受三個必需參數(shù)$search
(要搜索的子串)、$replace
(進(jìn)行替換的值)、$string
(字符串)和一個可省略的參數(shù)$count
(一個變量)。
通過上面的例子,前3個必需參數(shù)我們知道它們的意思,下面來聊聊可省略的參數(shù)$count
。
參數(shù)$count
的值需要設(shè)置為一個變量,用于統(tǒng)計(jì)并返回執(zhí)行替換的次數(shù)。簡單來說,設(shè)置了參數(shù)$count
,就可以知道一共執(zhí)行了幾次替換。
下面通過代碼示例來看看參數(shù)$count
的用法。
<?php header("Content-Type: text/html;charset=utf-8"); //設(shè)置字符編碼 $str = 'hello,world,Hello,world'; $replace = '*'; $search1 = 'hello'; $search2 = 'world'; $search3 = ','; echo str_replace($search1, $replace, $str,$i)."<br>"; echo "一共執(zhí)行了 $i"." 次替換<br><br>"; echo str_replace($search2, $replace, $str,$i)."<br>"; echo "一共執(zhí)行了 $i"." 次替換<br><br>"; echo str_replace($search3, $replace, $str,$i)."<br>"; echo "一共執(zhí)行了 $i"." 次替換<br>"; ?>
輸出結(jié)果:
好了就說到這里了,有其他想知道的,可以點(diǎn)擊這個哦。→ →php視頻教程
最后給大家推薦閱讀一個經(jīng)典課程《PHP字符串處理(玉女心經(jīng)版)》,免費(fèi)的~快來學(xué)習(xí)啊!