當前位置:首頁 » 編程語言 » 字元串處理php

字元串處理php

發布時間: 2024-09-03 17:43:02

1. php 怎麼處理字元串

大家通過對PHP的學習,可以運用這一高級語言創建一個性能較高的網站。對於初學者來說,對於PHP字元串mbstring還是比較陌生的,下面我們就來介紹一下PHP字元串mbstring的具體應用。

多國語言並存就意味著多位元組,PHP內置的字元串長度函數strlen無法正確處理中文字元串,它得到的只是字元串所佔的位元組數。對於GB2312的中文編碼,strlen得到的值是漢字個數的2倍,而對於UTF-8編碼的中文,就是1~3倍的差異了。

採用PHP字元串mbstring可以較好地解決這個問題。mb_strlen的用法和strlen類似,只不過它有第二個可選參數用於指定字元編碼。例如得到UTF-8的字元串$str長度,可以用mb_strlen($str,』UTF-8′)。如果省略第二個參數,則會使用PHP的內部編碼。內部編碼可以通過mb_internal_encoding()函數得到,設置有兩種方式:

1. 在php.ini中設置mbstring.internal_encoding = UTF-8

2. 調用mb_internal_encoding(」GBK」)

除了PHP字元串mbstring,還有很多切割函數,其中mb_substr是按字來切分字元,而mb_strcut是按位元組來切分字元,但是都不會產生半個字元的現象。而且從函數切割對長度的作用也不同,mb_strcut的切割條件是小於strlen, mb_substr是等於strlen,看下面的例子,

< ? $str = 『我是一串比較長的中文-www.jefflei.com』; echo 「mb_substr:」 . mb_substr($str, 0, 6, 『utf-8′); echo 」 「; echo 「mb_strcut:」 . mb_strcut($str, 0, 6, 『utf-8′); ?>

輸出如下:

mb_substr:我是一串比較

mb_strcut:我是

需要注意的是,PHP字元串mbstring並不是PHP核心函數,使用前需要確保在php編譯模塊時加入mbstring的支持:

(1)編譯時使用–enable-mbstring

(2)修改/usr/local/lib/php.inc

default_charset = 「zh-cn」

mbstring.language = zh-cn

mbstring.internal_encoding =zh-cn

PHP字元串mbstring類庫內容比較多,還包括mb_ send_ mail 之類的email處理函數等

熱點內容
php難招 發布:2025-01-14 19:06:07 瀏覽:487
sublime編譯php 發布:2025-01-14 18:57:16 瀏覽:307
雲計算伺服器是什麼 發布:2025-01-14 18:56:22 瀏覽:41
vip域名查詢ftp 發布:2025-01-14 18:46:48 瀏覽:114
格式化linux 發布:2025-01-14 18:35:14 瀏覽:593
如何進入安卓原生市場 發布:2025-01-14 18:22:06 瀏覽:558
台式電腦找不到伺服器 發布:2025-01-14 18:19:58 瀏覽:423
androidsdk網盤 發布:2025-01-14 18:17:43 瀏覽:80
個別用戶訪問不了騰訊雲伺服器 發布:2025-01-14 18:03:27 瀏覽:276
oracle鏈接sqlserver 發布:2025-01-14 17:58:33 瀏覽:729