PHP5薄荷教程 17 字串操作函式 1

2021-04-15 08:08:24 字數 4056 閱讀 6272

php5中的字串操作函式種類繁多,功能齊全,以下就讓我們來分門別類地學習一下。

一、輸出

1、void echo(string arg1 [,string ...])

輸出所有變數,括號可以省略。

2、int print(string arg)

輸出arg的值,總是返回1,括號可以省略。

3、int printf(string format [,mixed args [, mixed ...]])

按照format指定的格式輸出所有變數,返回輸出字串的長度。以下是format的使用說明,其後是一些例項。

1)正負限定符用來指定強制顯示資料的符號。

2)填充限定符用來指定填充時用什麼符號。該符號可以是空格或0,空格為預設值。如果要指定別的填充符號,則需要用單引號(')來說明。

3)對齊限定符用來指定輸出時是左對齊還是右對齊。

4)寬度限定符用來指定輸出時起碼的寬度。

5)精度限定符用來指定輸出浮點數時要顯示多少位小數。如果被用在字串上,則限定最大長度。

6)型別限定符用來指定以什麼型別來輸出資料,

% 該符號是型別限定符的啟始符,如果要顯示%,則需要用兩個%。

b 變數被看作整數處理,輸出其二進位制的形式。

c 變數被看作整數處理,輸出其對應的ascii字元。

d 變數被看作整數處理,輸出其帶符號的十進位制形式。

e 變數被看作用科學計數法表示的數字。如1.2e+2

u 變數被看作整數處理,輸出其不帶符號的十進位制形式。

f 變數被看作浮點數處理。

o 變數被看作整數處理,輸出其八進位制的形式。

s 變數被看作字串處理。

x 變數被看作整數處理,輸出其十六進製制的形式。(小寫)

x 變數被看作整數處理,輸出其十六進製制的形式。(大寫)

7)變數交錯

一般地,該函式按照提供的引數的順序來輸出,如果想要改變順序則需要使用變數交錯限定符。如:

printf("the %2$s contains %1$d monkeys", $num, $location);

同樣地,引數可以被重複使用。如:

printf('the %2$s contains %1$d monkeys.

that/'s a nice %2$s full of %1$d monkeys.', $num, $location);

以下是一些例項,以供參考。

1)輸出資料

<?php

$n =  43951789;

$u = -43951789;

$c = 65; // ascii 65 is 'a'

printf("%%b = '%b'/n", $n);

printf("%%c = '%c'/n", $c);

printf("%%d = '%d'/n", $n);

printf("%%e = '%e'/n", $n);

printf("%%u = '%u'/n", $n);

printf("%%u = '%u'/n", $u);

printf("%%f = '%f'/n", $n);

printf("%%o = '%o'/n", $n);

printf("%%s = '%s'/n", $n);

printf("%%x = '%x'/n", $n);

printf("%%x = '%x'/n", $n);

printf("%%+d = '%+d'/n", $n);

printf("%%+d = '%+d'/n", $u);

?>

輸出:%b = '10100111101010011010101101'

%c = 'a'

%d = '43951789'

%e = '4.39518e+7'

%u = '43951789'

%u = '4251015507'

%f = '43951789.000000'

%o = '247523255'

%s = '43951789'

%x = '29ea6ad'

%x = '29ea6ad'

%+d = '+43951789'

%+d = '-43951789'

2)輸出字串

<?php

$s = 'monkey';

$t = 'many monkeys';

printf("[%s]/n",      $s); //基本字串輸出

printf("[%10s]/n",    $s); //右對齊(+號省略)

printf("[%-10s]/n",   $s); //左對齊(用空格填充)

printf("[%010s]/n",   $s); //限定寬度(用0填充)

printf("[%'#10s]/n",  $s); //用自定義填充符'#'

printf("[%10.10s]/n", $t); //左對齊並限定長度為10

?>

輸出:[monkey]

[    monkey]

[monkey    ]

[0000monkey]

[####monkey]

[many monke]

3)用0對整數填充

<?php

$isodate = sprintf("%04d-%02d-%02d", $year, $month, $day);

?> 

4)格式化貨幣

<?php

$money1 = 68.75;

$money2 = 54.35;

$money = $money1 + $money2;

//$money="123.1";

$formatted = sprintf("%01.2f", $money);

//輸出"123.10"

?> 

5)科學計數法

<?php

$number = 362525200;

echo sprintf("%.3e", $number); //輸出3.63e+8

?> 

4、string sprintf(string format [,mixed args [,mixed ...]])

同printf(),唯一的區別是將輸出內容返回到乙個字串中。

5、int vprintf(string format, array args)

對陣列args中的每個元素進行格式化。返回輸出字串的長度。

6、string vsprintf(string format, array args)

同vprintf(),區別是將輸出內容返回到乙個字串中。

7、mixed sscanf(string str, string format)

按照格式format讀取字串中的資料,並以陣列的形式返回。

二、組合和分割

1、string implode(string glue, array pieces)

或string join(string glue, array pieces)

將陣列pieces中的資料用glue連線,並返回連線後的字串。如implode(".",array(1,2,3))返回"1.2.3"。

2、array explode ( string separator, string string [, int limit] )

以separator為分隔符,將string分割成若干個元素並返回改數組合。limit指定最多分割為多少塊,最後乙個元素包含剩餘字串。

<?php

$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";

$pieces = explode(" ", $pizza);

echo $pieces[0]; // piece1

echo $pieces[1]; // piece2

?>

3、array str_split ( string string [, int split_length] )

按split_length指定的長度將string分割開來並返回陣列。如果split_length沒有指定,則預設為1。 

PHP5薄荷教程 14 變數操作函式

二 判斷 獲取變數的資料型別 1 bool is numeric mixed var 判斷變數var是否為數字,是則返回true,不是則返回false。以下函式的用法類似 is int is integer is long 整數 is float is double is real 浮點數 is s...

PHP5 字串處理函式大全

php5字串處理函式小結,對於使用php的朋友經常用得到的一些函式。方便查詢使用。addcslashes 為字串裡面的部分字元新增反斜線轉義字元 addslashes 用指定的方式對字串裡面的字元進行轉義 bin2hex 將二進位制資料轉換成十六進製制表示 chop rtrim 的別名函式 chr ...

PHP5 字串處理函式大全

addcslashes 為字串裡面的部分字元新增反斜線轉義字元 addslashes 用指定的方式對字串裡面的字元進行轉義 bin2hex 將二進位制資料轉換成十六進製制表示 chop rtrim 的別名函式 chr 返回乙個字元的ascii碼 chunk split 按一定的字元長度將字串分割成小...