最近在利用PHP寫一支計算機,記錄一下學習到的一些函式。
str_replace
str_replace(尋找的字串,取代成的字串,原字串)可以用來取代字串中的內容,使用範例可以參考PHP官方網站。
$string_example='Hello, welcome to PJCHENder'; $replace_example = str_replace('H',"W",$string_example); echo $replace_example; //結果是:Wello, welcome to PJCWENderexplode
explode(目標字串,原字串)可以把字串根據目標字元替代成陣列,使用範例可以參考PHP官方網站。
$string_example='Hello, welcome to PJCHENder'; $replace_example = explode(" ",$string_example); print_r( $replace_example); //輸出結果是:Array ( [0] => Hello, [1] => welcome [2] => to [3] => PJCHENder )
如果是想要根據許多不同的目標字串來拆成陣列,可以參考官網最下方的討論,有人提供了一個相當簡單的function。簡單來說,就是先用str_replace把目標字串,都先取代成一個符號,接著再利用explode把那個符號拆開。
寫法像是這樣:$string_example='Hello,welcome+to-PJCHENder'; // 先把所有目標字串取代成_ $replace_example = str_replace(array(",","+","-"),'_',$string_example); // 在根據_把字串拆成不同陣列 $replace_array = explode('_',$replace_example); print_r( $replace_array); //輸出結果是:Array ( [0] => Hello, [1] => welcome [2] => to [3] => PJCHENder )str_split
str_split(原字串,位元長度)可以根據位元長度(空白也算一個字元)來將字串中的內容切割成許多不同的陣列,使用範例可以參考PHP官方網站。
$string_example='Hello,welcome to PJCHENder'; $replace_example = str_split($string_example,3); print_r( $replace_example); //輸出結果是:Array ( [0] => Hel [1] => lo, [2] => wel [3] => com [4] => e t [5] => o P [6] => JCH [7] => ENd [8] => er )substr_count
sub_strcount(被搜尋的字串,目標字串)用來計算被搜尋的字串中,出現多少次目標字串
$string_example='This is PJCHENder website'; echo substr_count($string_example,"is"); //用來看被搜尋的字串中,出現幾次目標字串 // 輸出結果2count
count(陣列名稱)可以計算該陣列的元素數目,使用範例可以參考PHP官方網站。
$string_example='Hello,welcome to PJCHENder'; $replace_example = str_split($string_example,3); $num_of_array=count($replace_example); echo $num_of_array; //輸出結果是:9array_splice
array_splice(陣列名稱,起始位置,長度,置換元素)可以用來刪除陣列元素,或者是把特定位置的陣列元素刪除後,再把新的元素內容代換進去PHP官方網站。
$string_example='Hello welcome to PJCHENder'; $replace_example = explode(" ",$string_example); // 輸出結果:Array ( [0] => Hello [1] => welcome [2] => to [3] => PJCHENder ) array_splice($replace_example,1);//陣列位置1以後的都刪除 // 輸出結果:Array ( [0] => Hello ) array_splice($replace_example,1,2);//陣列位置1以後的刪除兩個 // 輸出結果:Array ( [0] => Hello [1] => PJCHENder ) array_splice($replace_example,1,2,'Aaron');//陣列位置1以後的刪除兩個,並且插入一個新的元素 // 輸出結果:Array ( [0] => Hello [1] => Aaron [2] => PJCHENder )in_array
in_array(目標元素,被搜尋的陣列)用來在被搜尋的陣列中,檢驗目標元素是否存在,回傳1(true)或空值(false),需注意的是目標元素若是字串的時候,則對於字母大小寫是有區別的(case-sensitive)
我們可以看一下下面的範例,首先透過explode這個函式,我先把字串拆成陣列,接著,我用了一個簡易的if判斷式,用法是這樣的(如果)...?(為真時呈現):(為假時呈現)
$string_example='Hello, welcome to PJCHENder'; $replace_example = explode(" ",$string_example); print_r( $replace_example); // 輸出結果是:Array ( [0] => Hello, [1] => welcome [2] => to [3] => PJCHENder ) echo in_array("PJCHENder",$replace_example) ? "True" : "False"; // 輸出結果是True echo in_array("pjchender",$replace_example) ? "True" : "False"; // 輸出結果是False echo in_array("aaron",$replace_example) ? "True" : "False"; // 輸出結果是False
0 意見:
張貼留言