三、字串
1。直接量三種寫法:(1)單引號,不會替換變數,且只支援\' \\ 兩個轉譯字元
(2)雙引號,會進行變數替換,雙引號能支援除了\' 以外的所有轉譯符
(3)heredoc,比如:
$string =<<<end_of_string
haha hehe hoho....
hehe
end_of_string;
其中end_of_string可以被任意字串替代。heredoc會進行變數替換。字元比如單引號、雙引號、空格等都會被保留
(4)
2。echo: 不是函式,而是語言結構,所以不可以將它做為表示式。比如if(echo 'test')會解析出錯
3。訪問單個字元:$str = "haha"; echo$str;// h
4。刪除空白符:trim(string [,charlist]); ltrim(), rtrim(); p82
<?php
$string = "aaaabbbbbbaaaaaadddda";
$string1 =trim($string,"a");//將兩邊的a都去掉
echo $string1; //bbbbbbaaaaaadddd
echo $string; //不變還是aaaabbbbbbaaaaaadddda
?>
5. 改變大小寫:strtolower() strtoupper()操作整個字串,ucfirst()只操作字串的第乙個字母,ucwords()操作每乙個單詞的第乙個字母
6。html編碼:htmlentities() htmlspecialchars() html_entity_decode()
7。刪除html標籤:strip_tags($html_string, $reserve_string);第二個引數指定要留下的標籤。
8。url編碼urlencode(),urldecode(),rawurlencode(),rawurldecode().
(1) 兩種編碼方式不同點是處理空格,前者編碼為+,後者是%20
(2) 中文也會被編碼成%dd%dd的形式。
(3) 不要對乙個完整的url使用這些函式,因為它門會轉移冒號和反斜槓.應該只編碼部分url,然後在之前加上協議和網域名稱
<?php
$name = "php 程式設計";
$output =urlencode($name);
echo "";
//php+%b3%cc%d0%f2%c9%e8%bc%c6
?>
9.比較字串:(1) 比較操作符。< , >等比較操作符的乙個引數是數字時,其他引數也將被轉換為數字型別,所以"php" < 1.「php」被轉換為0.
而==比較操作符,當乙個是數字,另乙個是字串時,將數字轉換為字串。
(2)strcmp()區分大小寫,strcasecmp()不區分大小寫,它在比較之前,將字串轉換為小寫。
(3)strncmp(string1,string2,len),strncasecmp(string1,string2,len)只比較前面len個字元
(4)strnatcmp(),strnatcasecmp()進行自然順序的比較
10。子串獲取:$piece =substr(string,start [, length]);
11. 字串的插入刪除:substr_replace(orginal_string, new_string, start [, length]).
該函式首先將original_string從start開始刪除length個字元,然後再start處插入new_string.這個函式有以下幾種用法:
(1).普通操作:
<?php
$greeting = "good morning citizen";
echosubstr_replace($greeting,"bye",5,7);//good bye citizen
?>
(2).插入:無刪除的插入,只需要設定length為0
$greeting = "good morning citizen";
//good bye morning citizen
substr_replace($greeting,"bye",5,0);
(3).刪除:將某一段子串刪除,只需將第二個引數new_string設定為""
substr_replace($greeting,"",5,7); //good citizen
substr_replace($greeting,"",5); //good
另外,start和length都可以是負值,表示從字串末尾開始計數。
12。字串的填充:str_pad(original_string, to_length [, pad_string,str_pad_right | str_pad_right_left | str_pad_both ]);
(1) 該函式將original_string用pad_string填充成to_length長的字串,預設為str_pad_right,即右邊
(2) 如果沒有引數pad_string,則預設是以空格加在字串的右邊
<?php
echo str_pad('haha',30)."end"; //haha end
echo str_pad('haha',30,'.')."end"; //haha..........................end
?>
13. 字串的翻**strrev(string);
14. 重複字元組成的字串:str_repeat(string,count);比如,建立乙個分割符:str_repeat('-',30);
三 字串操作
windows核心編碼字符集採用unicode字符集,字串處理使用unicode string,是乙個結構體,定義如下 typedef struct unicode string unicode string length 字串長度,maximumlength 字串緩衝區長度,buffer 字串緩衝...
三 字串補充
1 輸出函式中的字串的格式化 之前有簡單地使用了說明了prin函式中字串的拼接。name xiong age 21 男 high 175weight 56 print 我姓 s,性別 s,今年 s歲,身高 scm,體重 skg。name,age,high,weight 為了保證絕對正確。只需要將上面...
三 字串 向量 陣列
直接初始化和拷貝初始化 string s1 10,c string s2 string 10,c 會影響效能 s1.size 返回物件中字元的個數,型別為string size type,是無符號型別,不要與有符號型別混用 範圍 for string str some string for auto...