程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php echo, print, print_r, sprintf, var_dump, var_expor的使用區別

php echo, print, print_r, sprintf, var_dump, var_expor的使用區別

編輯:PHP綜合

/*******echo********/
echo— 輸出一個或多個字符串
描述
echo ( string arg1 [, string ...] )
echo()實際上不是一個函數(它是一個語言結構),所以您不需要使用括號。echo()的(不同於其他一些語言構造)並不像一個功能,所以它不能總是在函數中使用。此外,如果你想傳遞多個參數的echo(),參數必須不被括在括號內。
echo()是命令,不能返回值。echo後面可以跟很多個參數,之間用分號隔開,如:
echo $myvar1;
echo 1,2,$myvar,”bold”;

/*******print********/
print— 輸出一個或多個字符串
描述
int print ( string arg )
print()是實際上沒有一個真正的函數(它是一個語言結構),所以你並不需要使用它的參數列表的括號。
 可以返回一個值,只能有一個參數

/*******print_r()********/
 print_r
(PHP 4, PHP 5)
print_r –  打印關於變量的易於理解的信息。
描述
bool print_r ( mixed expression [, bool return] )
注: 參數 return 是在 PHP 4.3.0 的時候加上的
print_r() 顯示關於一個變量的易於理解的信息。如果給出的是 string、integer 或 float,將打印變量值本身。如果給出的是 array,將會按照一定格式顯示鍵和元素。object 與數組類似。
記住,print_r() 將把數組的指針移到最後邊。使用 reset() 可讓指針回到開始處。
<pre>
<?php
    $a = array (‘a' => ‘apple', ‘b' => ‘banana', ‘c' => array (‘x','y','z'));
    print_r ($a);
?>
</pre>
上邊的代碼將輸出: <pre>
Array
(
    [a] => apple
    [b] => banana
    [c] => Array
        (
            [0] => x
            [1] => y
            [2] => z
        )
)
</pre>
如果想捕捉 print_r() 的輸出,可使用 return 參數。若此參數設為 TRUE,print_r() 將不打印結果(此為默認動作),而是返回其輸出。
例子 1. return 參數示例
<?php
    $b = array (‘m' => ‘monkey', ‘foo' => ‘bar', ‘x' => array (‘x', ‘y', ‘z'));
    $results = print_r ($b, true); //$results 包含了 print_r 的輸出結果
?>

注: 如果想在 PHP 4.3.0 之前的版本中捕捉 print_r() 的輸出,可使用輸出控制函數。
注: 在 PHP 4.0.4 之前的版本中,如果給出的 array 或 object 包含了直接或間接指向自身的引用,print_r() 將永遠繼續下去。print_r($GLOBALS) 就是一個例子,因為 $GLOBALS 自身即是全局變量,其包含了指向自身的引用。
 /*******sprintf()********/

/*******var_dump()********/
var_dump
(PHP 3 >= 3.0.5, PHP 4, PHP 5)
var_dump — 打印變量的相關信息
描述
void var_dump ( mixed expression [, mixed expression [, ...]] )
此函數顯示關於一個或多個表達式的結構信息,包括表達式的類型與值。數組將遞歸展開值,通過縮進顯示其結構。
提示: 為了防止程序直接將結果輸出到浏覽器,可以使用輸出控制函數來捕獲此函數的輸出,並把它們保存到一個例如 string 類型的變量中。

/*******var_export()********/
var_export
(PHP 4 >= 4.2.0, PHP 5)
var_export — 輸出或返回一個變量的字符串表示
描述
mixed var_export ( mixed expression [, bool return] )
此函數返回關於傳遞給該函數的變量的結構信息,它和 var_dump() 類似,不同的是其返回的表示是合法的 PHP 代碼。
var_export必須返回合法的php代碼, 也就是說,var_export返回的代碼,可以直接當作php代碼賦值個一個變量。 而這個變量就會取得和被var_export一樣的類型的值
 但是, 當變量類型為resource的時候, 是無法簡單copy復制的,所以, 當var_export的變量是resource類型時, var_export會返回NULL
復制代碼 代碼如下:
$res = fopen('status.html', 'r');
var_dump($res); //resource(2) of type (stream)
var_export($res); //NULL

您可以通過將函數的第二個參數設置為 TRUE,從而返回變量的表示。
復制代碼 代碼如下:
<pre>
<?php
$a = array (1, 2, array (“a”, “b”, “c”));
var_export ($a);
/* 輸出:
array (
  0 => 1,
  1 => 2,
  2 =>
  array (
    0 => ‘a',
    1 => ‘b',
    2 => ‘c',
  ),
)
*/
$b = 3.1;
$v = var_export($b, TRUE);
echo $v;
/* 輸出:
3.1
*/
?>
</pre>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved