新聞中心
什么是字符串兩端空格?
在 PHP 中,當(dāng)我們使用字符串函數(shù)時(shí),輸入的字符串可能會(huì)包含一些不可見(jiàn)的字符,比如制表符、換行符和空格等。而這些不可見(jiàn)字符就有可能被誤認(rèn)為是有效內(nèi)容導(dǎo)致程序出錯(cuò)。

其中最常見(jiàn)的情況就是在用戶(hù)注冊(cè)登錄時(shí)輸入用戶(hù)名或密碼時(shí)多加了一個(gè)或幾個(gè)空格,在驗(yàn)證用戶(hù)名或密碼是否正確時(shí)就會(huì)因?yàn)榭崭穸鵁o(wú)法通過(guò)驗(yàn)證。
我們需要對(duì)輸入的字符串進(jìn)行處理,將其首尾處的所有空白字符去除并返回結(jié)果。
答案: 可以使用 PHP 的 trim() 函數(shù)來(lái)去除字符串首尾處所有的空白字符。
trim() 函數(shù)詳解
trim() 函數(shù)可以刪除指定字符串開(kāi)頭和結(jié)尾處所有類(lèi)型 of 空白字符(space、tab、no-break space 等)及其他特殊字符(carriage return, null 等),并返回處理后得到新字符串。具體語(yǔ)法如下:
```php
string trim ( string $str [, string $character_mask = " \t\n\r\0\x0B" ] )
```
參數(shù)說(shuō)明:
- str:要處理的原始字符串。
- character_mask:可選參數(shù)。如果提供了該參數(shù),則函數(shù)只移除指定列表中存在于開(kāi)頭與結(jié)尾處的子串,默認(rèn)值為 " \t\n\r\0\x0B"。
返回值:處理后得到的新字符串。
示例演示
下面我們來(lái)看一個(gè)簡(jiǎn)單的 PHP 代碼片段,展示如何使用 trim() 函數(shù)去除字符串首尾處空格:
$str = " Hello, World! ";
echo "原始字符串:".$str."
";
echo "去除空格后:".trim($str)."
";
輸出結(jié)果為:
原始字符串: Hello, World!
去除空格后:Hello, World!
從上述代碼中可以看出,當(dāng)我們傳入一個(gè)包含開(kāi)頭和結(jié)尾處多余空白字符的字符串時(shí),trim() 函數(shù)就會(huì)自動(dòng)將其刪除并返回處理過(guò)后的新字符串。這樣就可以避免因用戶(hù)輸入錯(cuò)誤而導(dǎo)致程序無(wú)法正常運(yùn)行了!
其他相關(guān)函數(shù)
PHP 中還有一些與 trim() 函數(shù)類(lèi)似、用途相近的函數(shù),它們分別是 ltrim() 和 rtrim()。
- ltrim(string $str [, string $character_mask]): 去掉指定字符集在 str 左邊(即開(kāi)頭)出現(xiàn)過(guò)得所有字符。
- rtrim(string $str [, string $character_mask]): 去掉指定字符集在 str 右邊(即結(jié)尾)出現(xiàn)過(guò)得所有字符。
這兩個(gè)函數(shù)都與 trim() 一樣支持可選參數(shù) character_mask,并且功能也非常類(lèi)似。需要注意的是,在使用 ltrim()/rtrim()/trim() 這三個(gè)函數(shù)時(shí),必須將處理后的結(jié)果賦值給一個(gè)變量,否則不會(huì)對(duì)原始字符串進(jìn)行任何修改。
網(wǎng)站欄目:PHP如何去掉字符串兩端空格
本文來(lái)源:http://m.fisionsoft.com.cn/article/copgcig.html


咨詢(xún)
建站咨詢(xún)
