echo,print(),print_r()和var_dump()有什么區別?


echo,print是php語言結構, print_r、var_dump是函數,print和print_r有返回值
print,echo只能打印出簡單類型變量的值(如int,string)  
print_r,var_dump可以打印出復雜類型變量的值(如數組,對象)  

1.echo -- 輸出一個或者多個字符串  
 Description  
 void echo ( string arg1 [, string ...] ) //返回值為空  

 

$a = 'nihao';
$b = 'pengyou';
echo $a,$b;
//nihaopengyou

2.print --輸出一個字符串  
Description  
int print ( string arg )//返回值為整形1  

$return = print('456');
echo '</br>';
echo $return;
//456
//1

3.print_r --

bool print_r ( mixed $expression  )
$expression (1)是 string、integer 或 float 類型變量,將打印變量值本身.(2)如果給出的是 array,將會按照一定格式顯示鍵和元素。object 與數組類似。
$b = array ('m' => 'monkey', 'foo' => 'bar', 'x' => array ('x', 'y', 'z'));
echo '<pre>';
$results = print_r ($b); 
echo '</pre>';
var_dump($results) ;
//輸出
Array
(
    [m] => monkey
    [foo] => bar
    [x] => Array
        (
            [0] => x
            [1] => y
            [2] => z
        )

)
bool(true)
string  print_r ( mixed $expression,true  )
$b = array ('m' => 'monkey', 'foo' => 'bar', 'x' => array ('x', 'y', 'z'));
echo '<pre>';
$results = print_r ($b,true); // 不再函數內輸出,$results 包含了 print_r 的輸出結果
echo '</pre>';
var_dump($results) ;
//輸出
string(146) "Array ( [m] => monkey [foo] => bar [x] => Array ( [0] => x [1] => y [2] => z ) ) "

4.var_dump

void var_dump ( mixed $expression [, mixed $... ] )
此函數顯示關於一個或多個表達式的結構信息,包括表達式的類型與值。數組將遞歸展開值,通過縮進顯示其結構。
參數
expression
你要打印的變量。

返回值
沒有返回值。
例子1

<?php $a = array(1, 2, array("a", "b", "c")); var_dump($a); ?>

輸出

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  array(3) {
    [0]=>
    string(1) "a"
    [1]=>
    string(1) "b"
    [2]=>
    string(1) "c"
  }
}

例子2

$b = 3.1;
$c = true;
var_dump($b, $c);

輸出

float(3.1)
bool(true)

 


免責聲明!

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



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