php拆分中文字串

2021-09-01 08:18:22 字數 1942 閱讀 6216

分隔字串,使用「str_split」就可以了好處是連空格也會作為陣列的元素。我之前的例子就是因為前乙個字串包含2個空格,而後乙個只有乙個。但是輸出的時候看到的顯示都是一樣的。

也可以按照其他分隔符進行分割,如「explode」或者「preg_split」,

php教程 explode() 函式

php string 函式

定義和用法

explode() 函式把字串分割為陣列。

語法explode(separator,string,limit)引數 描述

separator 必需。規定在**分割字串。

string 必需。要分割的字串。

limit 可選。規定所返回的陣列元素的最大數目。

例子在本例中,我們將把字串分割為陣列:

<?php

$str = "hello world. it's a beautiful day.";

print_r (explode(" ",$str));

?>

輸出:

array

([0] => hello

[1] => world.

[2] => it's

[3] => a

[4] => beautiful

[5] => day.

)

str_split 拆分函式

定義和用法

str_split() 函式把字串分割到陣列中。

語法str_split(string,length)引數 描述

string 必需。規定要分割的字串。

length 可選。規定每個陣列元素的長度。預設是 1。

說明如果 length 小於 1,str_split() 函式將返回 false。

如果 length 大於字串的長度,整個字串將作為陣列的唯一元素返回。

例子例子 1

輸出:

array

([0] => h

[1] => e

[2] => l

[3] => l

[4] => o

)

例子 2

<?php

print_r(str_split("hello",3));

?>

輸出:

array ( [0] => hel [1] => lo )

preg_split -- 用正規表示式分割字串

說明array preg_split ( string pattern, string subject [, int limit [, int flags]])

返回乙個陣列,包含 subject 中沿著與 pattern 匹配的邊界所分割的子串。

如果指定了 limit,則最多返回 limit 個子串,如果 limit 是 -1,則意味著沒有限制,可以用來繼續指定可選引數 flags。

flags 可以是下列標記的任意組合(用按位或運算子 | 組合):

preg_split_no_empty

如果設定了本標記,則 preg_split() 只返回非空的成分。

以上是一篇我在網上找到的關於拆分的字串的文章 ,也是比較全的。今天我在我在做專案的時候,遇到了這樣的乙個問題,拆分中英文混合的字串 。因為中文占有2個位元組,當使用str_split函式時,悲劇的出現了亂碼 。so,在網上找到了乙個能夠正確拆分字串的函式 。此函是只支援 gb2312編碼 ,其它的編碼的字串需要先轉換編碼 。

function arr_split_zh($tempaddtext)else}}

foreach ($arr_cont as &$row)

return $arr_cont;

}

使用PHP拆分中文字串的方法 收藏 小節

案例假設 假設我有乙個由英文本母 數字 中文字元組成的字串,我想要往這個字串的每兩個字元中間加入乙個百分號 例如 把 hurry的部落格blog.csdn.net jpr1990 變成 h r r y 的 博 客 b l o g c s d n n e t j p r 1 9 9 0 那麼我們怎麼來...

php中文字串翻轉

在utf 8編碼下,在使用strlen 時,乙個中英文本元是佔乙個位元組,而乙個中文字元是佔三個位元組。因此在呼叫strrev函式時,如果字串是純英文,不會出現什麼問題,但是如果字元中含有中文則會出現亂碼。str hello echo strlen str 5 echo strrev str oll...

PHP 中文字串擷取

本文提供兩種方法實現中文字串的擷取 1.使用系統提供的 mb substr 或iconv substr 函式 php.ini 配置檔案中的 mbstring 擴充套件要開啟才能使用 函式說明 string mb substr string str,int start int length null ...