PHP sscanf() 函數用於根據指定的格式解析來自字串的輸入,語法為sscanf(string,format,arg1,arg2,arg )。 sscanf()函數基於格式字串向變數解析字串。
php sscanf()函數怎麼用?
sscanf() 函數根據指定的格式解析來自字串的輸入。 sscanf() 函數基於格式字串向變數解析字串。
語法
sscanf(string,format,arg1,arg2,arg++)
參數:
1、string:必要。規定要讀取的字串。
2、format:必要。規定要使用的格式。可能的格式值:
● %% - 傳回一個百分號%
● %c - ASCII 值對應的字元
● %d - 包含正負號的十進制數(負數、0、正數)
● %e - 使用小寫的科學計數法(例如1.2e 2)
● %u - 不包含正負號的十進制數(大於等於0)
● %f - 浮點數
# ● %o - 八進制數
● %s - 字串
‧●
● %s - 字串 % x - 十六進制數(小寫字母) ● %X - 十六進制數(大寫字母) 附加的格式值。必需放置在% 和字母之間(例如%.2f): ◆ (在數字前面加上或- 來定義數字的正負性。預設地,只有負數做標記,正數不做標記) ◆ ' (規定使用什麼作為填充,預設是空格。它必須與寬度指定器一起使用。) ◆ - (左調整變數值) ◆ [0-9] (規定變數值的最小寬度) ◆ .[0-9] (規定小數位或最大字串長度)#註記:如果使用多個上述的格式值,它們必須按照上面的順序使用。 3、arg1:可選。儲存資料的第一個變數。 4、arg2:可選。儲存資料的第二個變數。5、arg :可選。儲存資料的第三、四個變量,依此類推。
傳回值:
如果只向該函數傳遞兩個參數,資料將以陣列的形式傳回。否則,如果傳遞了額外的參數,那麼被解析的資料就會儲存在這些參數中。如果區分符的數目大於包含它們的變數的數目,則會發生錯誤。不過,如果區分符的數目小於包含它們的變數的數目,則額外的變數包含 NULL。下面透過範例來看看php sscanf()函數的使用方法。
範例1:
<?php $str = "age:30 weight:60kg"; sscanf($str,"age:%d weight:%dkg",$age,$weight); // 显示类型和值 var_dump($age,$weight); ?>
int(30) int(60)
範例2:
###<?php $str = "If you divide 4 by 2 you'll get 2"; $format = sscanf($str,"%s %s %s %d %s %d %s %s %c"); print_r($format); ?>
Array ( [0] => If [1] => you [2] => divide [3] => 4 [4] => by [5] => 2 [6] => you'll [7] => get [8] => 2 )
以上是php sscanf函數怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!