常用PHP變量輸出:echo, prinf, sprintf, var_dump


1、使用 echo 語句
      使用 echo  可以打印變量和內容,其他可以是系統變量,也可以是HTML代碼,也可以是一個PHP表達式,如下示例:
               $a = "12345";    //  變量賦值
               $b = "this is string";
               // 下面分別打印顯示兩個變量內容
              echo $a ;
              echo $b;
              // 顯示由表單提交的內容
              echo $_POST['UserName'];
              $str1 = "FREEBSD";
              $str2 = "PHP";   //HTML式文本
              // 鏈接字符串$str1和$str2並顯示
              echo $str1."and".$str2."is good partners." ;
      ?>
 
2、使用printf函數
      printf函數用於格式化輸出字符串,主要用於字符串中以%開頭的格式字符串替換。
      語法: boolean printf ( string format[,mixed args] )
      請看下面的例子:
                   printf ( "$%01.2f", 43.2) ;  //  運行結果 : $43.20
                   printf ( "%d bottles of beer on %s", 100 , "the wall" ) ;
                   // 運行結果: 100 bottles of beer on the wall
                   printf ( "%15s", "some text" ) ;  // 運行結果:  some text
      ?>
 
      可以看到,以%開頭的格式字符串,則按順序進行參數替換顯示。如下所示:
                  printf ( "The %2\$s likes to %l\$s", "bark", "dog" ) ;
                  // 運行結果: The dog likes to bark
                  printf ( "The %l\$s says: %2\$s , %2\$s.","dog", "bark" ) ;
                  // 運行結果: The dog says : bark ,  bar.
 
3、使用sprintf 函數
      sprintf 函數也用做字符串格式化。該函數與 printf 函數基本相同, 但它可以將轉換后的結果保存到一個字符串變量中,而不是直接輸出。
      語法: string sprintf ( string format , mixed [args]... ) ;
      其中參數 format 是轉換的格式,以百分比符號%開始到轉換字符為止。請見下面的腳本例子:
                      $var1 = 68.75 ;
                      $var2 = 54.35 ;
                      $var3 = $var1 + $var2 ;
                      // 變量$var3值為"123.1";
                      $formatted = sprintf ( "%01.2f ", $var3 ) ;
                      // 變量 $var3 值為"123.10"
      ?>
      其中:%01.2f 的%符號是指定格式的開始,也就是從“起始字符”開始,直到出現“轉換字符”,格式化字符的工作正式結束。
      在%
符號后面的0表示“填空字符”,如果位置為空就用0來填充,在0后面1規定小數點的前面的數字占位要有1位以上,把1換成2,若$var3的值為
1.23,則$formatted的值將為01.23。由於在小數點前面的數字只占了一位,按照上面所規定的格式,小數點前面數字應該占2位,現在只有1
位,所以用0來填滿。在%01后面的 .2 的意思是規定小數點后的數字,必須占2位。如果$money的值為1.234,則$formatted
的值將為1.23。為什么4不見了呢?因為在小數點后面按照上面的規定,必須且僅能占2位。可是$var3的值中小數點占了3位,所以4被去掉了,只剩下
23 。
        最后,以f 轉換字符結尾,其他轉換字符請參考下面的字符轉換列表。
 
 轉換字符  功能說明
 %  打印出百分比符號,不轉換
 B  整數轉成二進制數
 C  整數轉成ASCII字符
 D  整數轉成十進制
 F  倍精度數字轉成浮點數
 O  整數轉成八進制數
 S  整數轉成字符串
 x/X  整數轉成小寫/大寫的十六進制數

 
        如果在%起始符號后面加上 - (負號)則會把數字按右對齊的方式進行處理。如下例所示。
                             $money = 1.4 ;
                     $formatted = sprintf ( "%-02.2f", $money ) ;
                     echo $formatted ;
        ?>
        這時候,$formatted 將不會再是01.40而是1.400
        轉換的格式一次包括如下:
        1、填空字符。0的話表示空格填0;空格是默認值。
        2、對齊方式。默認值為向右對齊,負號表示向左對齊。
        3、字段寬度。為最小寬度。
        4、精確度。指在小數點后的浮點位數。
 
4、  關於echo 與 print語句的區別
        echo是一個語句,單純顯示文本信息或變量值,而卻沒有返回值;
        printf (包括printf、sprintf )則是一個函數,可以返回一個布爾值(True 或 False);
        echo 語句沒有返回值,但是可以使用 .  (小圓點)來拼接字符串,而print則不可以。如果單純做顯示,使用     echo的效率會高一些(無返回值)。

5.var_dump
打印變量的相關信息,

此函數顯示關於一個或多個表達式的結構信息,包括表達式的類型與值。數組將遞歸展開值,通過縮進顯示其結構。
// 字符串變量
$a = "123";
var_dump($a);
運行結果:string(3) "123"
打印出該變量的:類型,長度,value值;


// 數值型數量
$b = 456;
var_dump($b);
運行結果:int(456)
打印出該變量的:類型,value值;


// 數組
$c = array('PHP起點', 'phpqidian.com');
var_dump($c);
運行結果:array(2) {
  [0]=>
  string(9) "PHP璧風偣"
  [1]=>
  string(13) "phpqidian.com"
}
打印出該數組的:類型,元素數,及元素對應的信息;


// 布爾類型變量
$d = true;
var_dump($d);
運行結果:bool(true)
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM