PHP str_split 字串切割函數

PHP str_split 字串切割函數的功能顧名思義就是用來切割字串用的,若您要切割的字串是英文字串,那使用 str_split 函數不會有什麼問題,但若您要切割的是繁體中文字串,使用 str_split 函數就會出錯,建議改用 PHP explode 字串切割函數來處理中文字串的切割。除了對中文字串處理上的問題之外,其實 str_split 函數還是有很多優點的,例如處理效率非常好,而且是很早就存在的 PHP 函數,運作也相對的穩定,若您只是要單純的切割英文字串,就請接著看下去吧!

PHP str_split 函數語法
array str_split ( 要切割的字串 , 切下的字串長度 );
PHP str_split 函數的第一個參數是要被切割的字串,這是一定要填寫的項目,否則 str_split 函數不知道要切割哪個字串,會因此出錯,第二個字串則是"切下來的字串長度",這是選擇性項目,不一定要填寫,功能是告訴 str_split 函數每幾個字元要切割一次,如果有需要,請填寫正整數,例如 3 表示每三個字元會被切割一次,切下來的每個部份也都是 3 個字元,最後一個部份則不一定。

如果沒有設定第二個參數,則 str_split 函數的預設效果會把每個字元都切割為各單一部份並存成 PHP Array

PHP str_split 函數應用範例
<?php
  $NewString = "A B C";
  $Arr1=str_split($NewString);//根據每個字元切割
  $Arr2=str_split($NewString,3);//根據每三個字元切割
  print_r($Arr1);
  print_r($Arr2);
?>
範例切割效果
Array (
 [0] => A
 [1] =>
 [2] => B
 [3] =>
 [4] => C
)
Array (
 [0] => A B
 [1] => C
我們在範例中先準備了一個簡單的字串 $NewString,接著我們使用了兩次 PHP str_split 函數,為什麼要使用兩次呢?因為要展現 str_split 函數的第二個參數效果給各位看,第一次使用 str_split 函數時,並未填入第二個參數,所以在最終的切割結果陣列內,可以看到總共有 5 個陣列元素,空格也算是一個,這是 str_split 函數的預設切割效果。

第二次使用 str_split 函數時,設定了第二個參數並給值為整數 3,所以 str_split 函數就根據每三個字元切割一次,從切割結果可以看到總共有兩個陣列元素,第一個陣列元素為「A B」,總共是三個字元,第二個陣列元素則為切割所剩下的所有部份。

字串切割的字元設定(即第二個參數)功能是 str_split 函數的一大優點。

更多 PHP 字串處理
參考資料 ➠ Wibibi:PHP str_split|PHP.NET:PHP: str_split - Manual
© Copyright webtech.tw Since 2010