<em id="i3oiu"></em>
  1. <tbody id="i3oiu"></tbody>
  2. 數科鏈接網全力打造:網頁編程、軟件開發編程、平面設計、服務器端開發、操作系統等在線學習平臺!學編程,上數科鏈接網!
    PHP教程>> PHP 基礎教程 PHP 表單 PHP 高級教程 PHP 數據庫 PHP XML PHP 和 AJAX PHP 參考手冊 PHP 5 Stri PHP Array PHP Calend PHP HTTP 函 PHP Simple PHP Date / PHP Direct PHP Error PHP Filesy PHP FTP 函數 PHP Filter PHP libxml PHP Math 函 PHP MySQL PHP XML Pa PHP Zip Fi PHP 雜項函數
    當前位置:首頁 > PHP教程 > PHP 5 String 函數
    上一節 下一節
     PHP vsprintf() 函數

    實例

    把格式化字符串寫入變量中:

    <?php
    $number = 9;
    $str = "Beijing";
    $txt = vsprintf("There are %u million bicycles in %s.",array($number,$str));
    echo $txt;
    ?>

    運行結果:

    There are 9 million bicycles in Beijing.

    定義和用法

    vsprintf() 函數把格式化字符串寫入變量中。

    與 sprintf() 不同,vsprintf() 中的參數位于數組中。數組元素將被插入到主字符串中的百分號(%)符號處。該函數是逐步執行的。在第一個 % 符號處,插入第一個數組元素,在第二個 % 符號處,插入第二個數組元素,依此類推。

    注釋:如果 % 符號多于 arg 參數,則您必須使用占位符。占位符被插入到 % 符號之后,由數字和 "\$" 組成。請參見例子 2。

    提示:相關函數:

    語法

    vsprintf(format,argarray)
    參數 描述
    format

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

    可能的格式值:

    • %% - 返回一個百分號 %
    • %b - 二進制數
    • %c - ASCII 值對應的字符
    • %d - 包含正負號的十進制數(負數、0、正數)
    • %e - 使用小寫的科學計數法(例如 1.2e+2)
    • %E - 使用大寫的科學計數法(例如 1.2E+2)
    • %u - 不包含正負號的十進制數(大于等于 0)
    • %f - 浮點數(本地設置)
    • %F - 浮點數(非本地設置)
    • %g - 較短的 %e 和 %f
    • %G - 較短的 %E 和 %f
    • %o - 八進制數
    • %s - 字符串
    • %x - 十六進制數(小寫字母)
    • %X - 十六進制數(大寫字母)

    附加的格式值。必需放置在 % 和字母之間(例如 %.2f):

    • + (在數字前面加上 + 或 - 來定義數字的正負性。默認情況下,只有負數才做標記,正數不做標記)
    • ' (規定使用什么作為填充,默認是空格。它必須與寬度指定器一起使用。例如:%'x20s(使用 "x" 作為填充))
    • - (左調整變量值)
    • [0-9] (規定變量值的最小寬度)
    • .[0-9] (規定小數位數或最大字符串長度)

    注釋:如果使用多個上述的格式值,它們必須按照上面的順序進行使用,不能打亂。

    argarray 必需。帶有參數的一個數組,這些參數會被插到 format 字符串中的 % 符號處。

    技術細節

    返回值: 以格式化字符串的形式返回數組值。
    PHP 版本: 4.1.0+

    更多實例

    例子 1

    使用格式值 %f:

    <?php
    $num1 = 123;
    $num2 = 456;
    $txt = vsprintf("%f%f",array($num1,$num2));
    echo $txt;
    ?>

    運行結果:

    123.000000456.000000

    例子 2

    使用占位符:

    <?php
    $number = 123;
    $txt = vsprintf("有兩位小數:%1\$.2f<br>沒有小數:%1\$u",array($number));
    echo $txt;
    ?>

    運行結果:

    有兩位小數:123.00
    沒有小數:123

    例子 3

    使用 sprintf() 來演示所有可能的格式值:

    <?php
    $num1 = 123456789;
    $num2 = -123456789;
    $char = 50; // ASCII 字符 50 是 2
    
    // 注釋:格式值 "%%" 返回百分號
    echo sprintf("%%b = %b",$num1)."<br>"; // 二進制數
    echo sprintf("%%c = %c",$char)."<br>"; // ASCII 字符
    echo sprintf("%%d = %d",$num1)."<br>"; // 帶符號的十進制數
    echo sprintf("%%d = %d",$num2)."<br>"; // 帶符號的十進制數
    echo sprintf("%%e = %e",$num1)."<br>"; // 科學計數法(小寫)
    echo sprintf("%%E = %E",$num1)."<br>"; // 科學計數法(大寫)
    echo sprintf("%%u = %u",$num1)."<br>"; // 不帶符號的十進制數(正)
    echo sprintf("%%u = %u",$num2)."<br>"; // 不帶符號的十進制數(負)
    echo sprintf("%%f = %f",$num1)."<br>"; // 浮點數(視本地設置)
    echo sprintf("%%F = %F",$num1)."<br>"; // 浮點數(不視本地設置)
    echo sprintf("%%g = %g",$num1)."<br>"; // 短于 %e 和 %f
    echo sprintf("%%G = %G",$num1)."<br>"; // 短于 %E 和 %f
    echo sprintf("%%o = %o",$num1)."<br>"; // 八進制數
    echo sprintf("%%s = %s",$num1)."<br>"; // 字符串
    echo sprintf("%%x = %x",$num1)."<br>"; // 十六進制數(小寫)
    echo sprintf("%%X = %X",$num1)."<br>"; // 十六進制數(大寫)
    echo sprintf("%%+d = %+d",$num1)."<br>"; // 符號說明符(正)
    echo sprintf("%%+d = %+d",$num2)."<br>"; // 符號說明符(負)
    ?>

    運行結果:

    %b = 111010110111100110100010101
    %c = 2
    %d = 123456789
    %d = -123456789
    %e = 1.234568e+8
    %E = 1.234568E+8
    %u = 123456789
    %u = 4171510507
    %f = 123456789.000000
    %F = 123456789.000000
    %g = 1.23457e+8
    %G = 1.23457E+8
    %o = 726746425
    %s = 123456789
    %x = 75bcd15
    %X = 75BCD15
    %+d = +123456789
    %+d = -123456789

    例子 4

    字符串說明符的演示:

    <?php
    $str1 = "Hello";
    $str2 = "Hello world!";
    
    echo vsprintf("[%s]",array($str1))."<br>";
    echo vsprintf("[%8s]",array($str1))."<br>";
    echo vsprintf("[%-8s]",array($str1))."<br>";
    echo vsprintf("[%08s]",array($str1))."<br>";
    echo vsprintf("[%'*8s]",array($str1))."<br>";
    echo vsprintf("[%8.8s]",array($str2))."<br>";
    ?>

    運行結果:

    [Hello]
    [ Hello]
    [Hello ]
    [000Hello]
    [***Hello]
    [Hello wo]


    申明:本文章由數科軟文網編輯整理并發布,如文中有侵權行為,請與本站客服聯系(QQ:254677821)!
    上一節 下一節
    相關教程  
    其他教程  
    站長軟文  
    PHP 基礎教程
    PHP 表單
    PHP 高級教程
    PHP 數據庫
    PHP XML
    PHP 和 AJAX
    PHP 參考手冊

    Copyright©數科鏈接網 版權所有 寧網通旗下網站 蘇ICP備08109594號-2
    站長QQ:254677821 電話:18013800932
    济公高手论坛最全最准 荃湾区| 上栗县| 延寿县| 安国市| 揭阳市| 临清市| 桂平市| 丹凤县| 临朐县| 三明市| 高州市| 清远市| 大丰市| 博野县| 金坛市| 合山市| 红原县| 乡宁县| 广昌县| 南昌市| 肇源县| 阿勒泰市| 招远市| 襄垣县| 彭州市| 中西区| 徐水县| 邢台县| 涡阳县| 广河县| 广西| 乌拉特后旗| 梅河口市| 淳化县| 团风县| 望奎县| 祁阳县| 阳山县| 清苑县| 顺平县| 商河县| http://m5.sina5nm0.pw http://m5.lsj4yz.pw http://v.lsj6ht.pw http://www.ablemedical6.cn http://www.lsjbk5.pw http://kml5n9.top