按照從表單提交資料之後,php處理的不同:接受,顯示,儲存。也有三種型別的格式化方法。
當資料從表單中上傳上來的時候需要對字串整理一下,去掉字串前後的空格或者其他字元。
** trim()就是去掉字串前後的空格、製表符、換行符等等。
** ltrim()去掉左邊的,就是清理開頭那一端
** rtrim()**去掉右邊的,就是結尾那一端的
$name = trim($_post['name']);
** 1.使用html格式化:nl2br()**
接收字串作為引數,將字串中的換行符更改為html中的
,便於在**頁面中顯示
** 2.改變字串中的字母大小寫**
** strtoupper()將字串轉換為大寫
** stroutlower將字串轉換為小寫
** ucfirst()如果字串的第乙個字元是字母,就將該字元大寫
** ucwords將字串中的每個單詞的第乙個字母轉換為大寫
** 3.格式化字串以便儲存:addslashes()**
資料庫有時候會把字串李公尺娜的引號,反斜槓,null字元當做是控制字元,這樣會導致向資料庫中儲存資料失敗。這種情況可以使用轉義符來轉義,也可以使用我們的轉義字串的函式
例如使用addslashes()函式:
$feedback = addslashes(trim($_post['feedback']));
我們會經常從字串中提取出想要的字串,以及新增一些字串。以下就是一些常用的方法函式
** 2.1使用函式explode()、implode()、join()**
** explode()**接收兩個引數,是按照給出的分隔符來分割字串,並將結果返回到乙個數字索引型的字串裡面。還有乙個可選引數是用來限制分成字串小塊的數量
$email = [email protected];
$email_array = explode('@', $email);
$email_array就是乙個數字索引型的字串,可以通過索引獲得自己想要的。
** implode()和join()**的作用和explode()完全相反,是從陣列中獲取陣列元素來組成乙個新的字串。接收的第乙個引數是你想要用來連線這些元素的分割符,第二個引數是乙個陣列操作物件,返回結果是乙個字串
2.2使用strtok()函式
同explode()的方法差不多,將字串按照給定的分隔符來分割,不同之處在於srttok()函式每次只會返回被分隔的一部分,一般可以跟while語句連用。這個函式的特點是每次只返回乙個
2.3使用substr()函式
這個函式是用來擷取字串中的一部分長度的,接收兩個引數分別是:需要操作的字串和開始擷取的位置。第三個引數是可選引數,用來限定擷取的長度的。
第二個引數也可以是負數,負數表示從字串的末尾向前數
substr($test, -9);
3.1字串的排序:strcmp(),strcasecmp(),strnatcmp()
這三個函式都是比較兩個字串大小的。來看函式原型
int strcmp(string str1, string str2);
接受兩個引數,分別是str1和str2,按照字典的順序進行比較,如果str1比str2大(即str1在str2後面)則返回1,相等返回0,這個函式區分大小寫。
strcasecmp()用法相同,在strcmp()的基礎上增加不再區分大小寫。
strnatcmp()函式在strcasecmp()的基礎上增加按照自然順序比較,所以這個函式是不去分大小寫,且按照人們的習慣進行排序的。
使用strlen()函式測試字串的長度
這個函式可以用來測試陣列的長度,也可以用來測試字串的長度
判別是否有特定字串,並得到字串的位置,還可以該字串進行替換
4.1在字串中查詢字串:strstr()、strchr()、strrchr()、stristr()
上面幾個函式的作用是:在乙個字串中查詢另乙個字串,php中strchr和strstr是完全一樣的。
strstr()函式原型
string strstr(string str1,string needle);
接受兩個引數,第乙個是目標字串,第二個是要查詢的關鍵字。
返回第乙個匹配的關鍵字,如果不存在就返回false.
該函式是區分大小寫的,如果向不區分大小寫,可以使用stristr()
strrchr用法相同,只不過會返回最後乙個匹配的關鍵字。
4.2查詢字串的位置:strpos(),strrpos()
strpos的作用也是用來子乙個字串中查詢關鍵字,但是卻不是返回關鍵字,而是返回關鍵字開始的位置。函式原型如下:
int strpos(strinig haystack, string needle, int[offset]);
第乙個引數是要被查詢的字串,第二個是關鍵字。第三個是可選的引數,表示從字串的哪乙個位置開始查詢。
strrpos()用法相同,只不過返回的是最後乙個匹配的位置。
4.3替換字串:str_replace()、substr_replace()
這兩個字串的作用很大,可以將查詢的字串進行替換。
mixed str_replace(mixed needle, mixed new_needle, mixed haystack [, int & count]);
引數分別為:需要查詢的關鍵字,用於替換的關鍵字,字串操作物件,乙個可選的操作次數
substr_replace()的作用是用關鍵字將字串的指定位置給替換掉。
string substr_replace(string string ,string replacement, int start, int[length])
接受的引數為:字串操作物件,需要替換的關鍵字,開始替換的位置和乙個可選的引數為從開始到結束的長度。
4.4用正規表示式查詢字串:ereg()、eregi()
此函式是用正規表示式來查詢字串中查詢,看看有沒有匹配,函式原型為:
int ereg(string pattern, string search, array[matches]);
第乙個引數是正規表示式,第二個是字串操作物件,可選的第三個是用來儲存儲存匹配的字串,因為經常會有好幾個匹配。
eregi()函式跟上面是一樣的,只是不再區分大小寫。
4.5用正則表示達替換字串
使用函式str_replace()函式
4.6使用正規表示式分割字串
這個也是比較使用的功能,使用的是split()函式
array split(string pattern, string search[, int max]);
返回的結果是乙個陣列集合,第乙個引數是正規表示式,第二個是字串,第三個可選的是進入陣列的個數。
php字串操作
一空格特殊字元 1 string trim string str string charlist 去除字串開始結尾位置的空格和特殊字元 如果沒有第二個引數只去除空格 2 string ltrim string str string charlist 去除字串開始位置的空格和特殊字元 3 string...
PHP 字串操作
可以使用trim 函式去除字串開始位置和結束位置的空格,並把結果字串返回。預設情況下,去除 n r t xob 0和空格。也可以傳入第二個引數提供要過濾的特殊字元。ltrim 只從字串開始處去除,rtrim 只從字串結束處去除。nl2br 函式將會把字串中的換行符替換為 標記。當字串中含有一些有問題...
php字串操作
一空格特殊字元 1 string trim string str string charlist 去除字串開始結尾位置的空格和特殊字元 如果沒有第二個引數只去除空格 2 string ltrim string str string charlist 去除字串開始位置的空格和特殊字元 3 string...