當前位置:才華齋>計算機>php語言>

PHP之sprintf函式用法

php語言 閱讀(8.56K)

文章主要介紹了PHP中sprintf函式用法,以例項形式詳細分析了sprintf函式格式化輸出的常見用法,具有一定的參考借鑑價值,需要的朋友可以參考下。

PHP之sprintf函式用法

本文例項講述了PHP中sprintf函式的用法。分享給大家供大家參考。具體用法分析如下:

sprintf()函式在php官方是說把字串格式化輸出了,本文就來給各位朋友介紹一下在學習sprintf()函式時的一些經驗分享,希望能給大家帶來幫助.

PHP函式 sprintf() 函式官方定義為:sprintf():把格式化的字串寫入一個變數中

語法為:sprintf(format,arg1,arg2,arg++);

引數:

format:必須,轉換格式

arg1 :必須,規定插入 format 字串中第一個%符號處的引數

arg1 :可選,規定插入 format 字串中第二個%符號處的引數

arg1++:可選,規定插入 format 字串中第三、四等%符號處的.引數

引數 format 的轉換格式,以百分比符號(%)開始到轉換字元結束,下面是有可能的format值.

%% – 返回百分比符號

%b – 二進位制數

%c – 依照 ASCII 值的字元

%d – 帶符號十進位制數

%e – 可續計數法(比如 1.5e+3)

%u – 無符號十進位制數

%f – 浮點數(local settings aware)

%F – 浮點數(not local settings aware)

%o – 八進位制數

%s – 字串

%x – 十六進位制數(小寫字母)

%X – 十六進位制數(大寫字母)

下面是一些demo,程式碼如下:

複製程式碼 程式碼如下:

// 1. %% :把 %% 替換成 %

$str = '測試一下 %% 這個引數,會被替換成什麼';

echo sprintf($str);

//返回結果: 測試一下 % 這個引數,會被替換成什麼(%%被替換成一個%)

// 2. %b :該引數只能替換整型資料,如果是浮點型,只會取整數部分,會忽略小數點後面的資料。如果是非整型資料。返回 0

$str = '引數 %b 會替換成二進位制數';

$arg = '10';

echo sprintf($str,$arg);

//返回結果:引數 1010 會替換成二進位制數

$arg = 10.23;

echo sprintf($str,$arg);

//返回結果:引數 1010 會替換成二進位制數

$arg = 'abc';

echo sprintf($str,$arg);

//返回結果:引數 0 會替換成二進位制數

// 3. %c 返回字元編碼的ASCII碼

$arg = 65;

$str = "數字 {$arg} 對應的ASCII碼為 %c ";

echo sprintf($str,$arg);

//返回結果:數字 65 對應的ASCII碼為 A

// 4. %d 將一段字元裡的%d替換成int型,資料要求同 $b 相同

$str = 'ID號為 %d ';

$arg = -3;

echo sprintf($str,$arg);

//返回結果:ID號為 -3

$arg = 4.5;

echo sprintf($str,$arg);

//返回結果:ID號為 4

$arg = 'abc';

echo sprintf($str,$arg);

//返回結果:ID號為 0

// 5. %s - 字串

$str = "這是用來測試的sprintf的字串( %s )。今天消費了%f元。從鐘樓到小寨有%d站。上班";

$arg = '%s';

echo sprintf($str,$arg,6,5);

//返回結果:這是用來測試的sprintf的字串( %s )。今天消費了6.000000元。從鐘樓到小寨有5站。上班