PHP學習系列(1)——字符串處理函數(5)

3一、ord() 函數返回字符串第一個字符的 ASCII 值。php

語法:ord(string)算法

例子

<?php
echo ord("h");
echo ord("hello");
?>

輸出:數組

104
104

3二、parse_str() 函數把查詢字符串解析到變量中。函數

語法:parse_str(string,array)

array——可選。規定存儲變量的數組名稱。該參數指示變量存儲到數組中。spa

說明:若是未設置 array 參數,由該函數設置的變量將覆蓋已由同名變量。php.ini 中的 magic_quotes_gpc 設置影響該函數的輸出。若是已啓用,那麼在 parse_str() 解析以前,變量會被addslashes()轉換。

例子

例子 1
<?php
parse_str("id=23&name=John%20Adams");
echo $id."<br />";
echo $name;
?>

輸出:code

23
John Adams
例子 2
<?php
parse_str("id=23&name=John%20Adams",$myArray);
print_r($myArray);
?>

輸出:orm

Array
(
[id] => 23
[name] => John Adams
)

 

3三、print() 函數輸出一個或多個字符串blog

說明:print() 函數實際上不是函數,因此您沒必要對它使用括號。print() 函數稍慢於 echo(),由於它須要返回1。排序

3四、printf() 函數輸出格式化的字符串。字符串

printf(format,arg1,arg2,arg++)

format——必需。規定字符串以及如何格式化其中的變量。

arg1——必需。規定插到格式化字符串中第一個 % 符號處的參數。

arg2——可選。規定插到格式化字符串中第二個 % 符號處的參數。

arg++——可選。規定插到格式化字符串中第3、四等等 % 符號處的參數。

說明:arg1, arg2, ++ 等參數將插入到主字符串中的百分號 (%) 符號處。該函數是逐步執行的。在第一個 % 符號中,插入 arg1,在第二個 % 符號處,插入 arg2,依此類推。

3五、quotemeta() 函數在字符串中某些預約義的字符前添加反斜槓。

語法:quotemeta(string)

這些預約義字符是:

  • 句號 (.)
  • 反斜槓 (\)
  • 加號 (+)
  • 星號 (*)
  • 問號 (?)
  • 方括號 ([])
  • 脫字符號 (^)
  • 美圓符號 ($)
  • 圓括號 (())

區別於addslashes() 函數,它轉義的預約義字符是

  • 單引號 (')
  • 雙引號 (")
  • 反斜槓 (\)
  • NULL

3六、setlocale() 函數設置地區信息(地域信息)。地區信息是針對一個地理區域的語言、貨幣、時間以及其餘信息。該函數返回當前的地區設置,若失敗則返回 false。

語法:setlocale(constant,location)

constant——必需。規定應該設置什麼地區信息。

可用的常量:

  • LC_ALL - 包括下面的全部選項
  • LC_COLLATE -排序次序
  • LC_CTYPE - 字符類別及轉換(例如全部字符大寫或小寫)
  • LC_MESSAGES - 系統消息格式
  • LC_MONETARY - 貨幣格式
  • LC_NUMERIC - 數字格式
  • LC_TIME - 日期/時間格式

location——必需。規定把地區信息設置爲何國家/地區。若是 location 參數是數組,setlocale() 會嘗試每一個數組元素,直到找到合法的語言或地區代碼爲止。若是某個地區在不一樣的系統上擁有不一樣的名稱,這一點頗有用。

提示:setlocale() 函數僅針對當前腳本改變地區信息。能夠經過 setlocale(LC_ALL,NULL) 把地區信息設置爲系統默認。

例子

在本例中,咱們將把 locale 設置爲 US English,而後再設置回系統默認:

<?php
echo setlocale(LC_ALL,"En-Us");
echo setlocale(LC_ALL,NULL);
?>

3七、sha1() 函數計算字符串的 SHA-1 散列。sha1() 函數使用美國 Secure Hash 算法 1。若是成功,則返回所計算的 SHA-1 散列,若是失敗,則返回 false。

語法:sha1(string,raw)

raw——可選。規定十六進制或二進制輸出格式:TRUE - 原始 20 字符二進制格式 ;FALSE - 默認。40 字符十六進制數;註釋:該參數是 PHP 5.0 中添加的。

例子 1
<?php
$str = 'Hello';
echo sha1($str);
?>

輸出:

f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0

 

3八、ha1_file() 函數計算文件的 SHA-1 散列。

語法:sha1_file(string,raw)

3九、similar_text() 函數計算兩個字符串的匹配字符的數目。該函數也能夠計算兩個字符串的類似度(以百分比計)。

語法:similar_text(string1,string2,percent)

string1——必需。規定要比較的第一個字符串。

string2——必需。規定要比較的第二個字符串。

percent——可選。規定供存儲百分比類似度的變量名。

註釋:levenshtein() 函數比 similar_text() 函數更快。不過,similar_text() 函數經過更少的必需修改次數提供更精確的結果。

例子

例子 1
<?php
echo similar_text("Hello World","Hello Peter");
?>

輸出:

7
例子 2
<?php
similar_text("Hello World","Hello Peter",$percent);
echo $percent;
?>

輸出:

63.6363636364

3九、sprintf() 函數把格式化的字符串寫入一個變量中。

例子 1
<?php
$str = "Hello";
$number = 123;
$txt = sprintf("%s world. Day number %u",$str,$number);
echo $txt;
?>

輸出:

Hello world. Day number 123

 

40、scanf() 函數根據指定的格式解析來自一個字符串的輸入。

若是隻向該函數傳遞兩個參數,數據將以數組的形式返回。不然,若是傳遞了額外的參數,那麼被解析的數據會存儲在這些參數中。若是區分符的數目大於包含它們的變量的數目,則會發生錯誤。不過,若是區分符少於變量,則額外的變量包含 NULL。

語法:sscanf(string,format,arg1,arg2,arg++)

string——必需。規定要讀取的字符串。

format——必需。規定要使用的格式。

arg1——可選。存儲數據的第一個變量。

arg2——可選。存儲數據的第二個變量。

arg++——可選。存儲數據的第3、四個變量。依此類推。

參數 format 是轉換的格式,以百分比符號 ("%") 開始到轉換字符結束。下面的可能的 format 值:
  • %% - 返回百分比符號
  • %b - 二進制數
  • %c - 依照 ASCII 值的字符
  • %d - 帶符號十進制數
  • %e - 可續計數法(好比 1.5e+3)
  • %u - 無符號十進制數
  • %f - 浮點數(local settings aware)
  • %F - 浮點數(not local settings aware)
  • %o - 八進制數
  • %s - 字符串
  • %x - 十六進制數(小寫字母)
  • %X - 十六進制數(大寫字母)

例子

<?php
$string = "age:30 weight:60kg";
sscanf($string,"age:%d weight:%dkg",$age,$weight);
// show types and values
var_dump($age,$weight);
?>

輸出:

int(30)
int(60)
相關文章
相關標籤/搜索