Ⅰ php中echo(),print(),print_r()的區別是什麼
echo
,print的區別在於echo
可以輸出多個變數值,而print只有一個變數,做為一個字元串輸出。另一點區別在於echo
沒有返回值,而print有返回值。
echo
可以一次輸出多個值,多個值之間用逗號分隔。echo是語言結構(language
construct),而並不是真正的函數,因此不能作為表達式的一部分使用。
語法正確:
echo
"Hello",
"World";
語法錯誤:
echo
("Hello",
"World");
print()
函數print()列印一個值(它的參數),如果字元串成功顯示則返回true,否則返回false。例如,
if
(!print("Hello,
World")){
die("you
are
not
listening
to
me");
}
printf()
printf()源於C語言中的printf()。該函數輸出格式化的字元串。
語法:
printf(format,arg1,arg2,arg++)
format
規定字元串以及如何格式化其中的變數;arg1,
arg2,
++
等參數將插入到主字元串中的百分號
(%)
符號處。該函數是逐步執行的。在第一個
%
符號中,插入
arg1,在第二個
%
符號處,插入
arg2,依此類推。
Example:
?php
$str
=
"Hello";
$number
=
123;
printf("%s
world.
Day
number
%u",$str,$number);
?>
#Results======
Hello
world.
Day
number
123
如果
%
符號多於
arg
參數,則您必須使用佔位符。佔位符被插入
%
符號之後,由數字和
"\$"
組成。
Ⅱ php中echo 與print 的區別
echo 是語法結構,也就是關鍵字,不是函數。使用的時候不用加括弧,加上也可以。顯示多個值的時候可以用逗號隔開。只支持基本類型,布爾型除外,echo true的時候顯示1,echo false的時候啥都沒有。
print 和 echo 基本一致。但是print 不支持逗號分隔多個顯示變數的語法。
print_r 是函數,不僅可以列印變數的的值,還能顯示變數類型,而且也可以顯示數組和對象這樣復雜的變數類型。print_r() 將把數組的指針移到最後邊。使用 reset() 可讓指針回到開始處
Ⅲ print和echo的區別
兩者相同點:
echo 和 print 都是語言結構(官方文檔解釋為language construct);
echo 和 print 都是用來輸出字元串的;
當同時只有一個參數的時候,echo 和 print 後面的括弧(parenthesis)都是可選的,即:echo ($argument1) 等價於 echo $argument1,print(argument)等價於print argument;
echo 和 print 在輸出之前,都會將參數的進行轉換,嘗試轉換為字元串類型。
兩者的區別 :
echo能接受N個字元串類型的參數(注意:有多個參數的時候,不能使用括弧,即echo $arg1,$arg2是正確的,echo($arg1,$arg2)會導致解析錯誤); print只能接收1個字元串類型的參數;
echo沒有返回值; print有返回值,其值永遠為int類型的1。
在這里引用PHP官方原文檔的說明 : "The major differences toechoare thatprintonly accepts a single argument and always returns 1."
Ⅳ php的高手們 請詳解 echo printf print 有什麼區別
PHP中的echo、print、print_r、sprintf、var_mp之間的區別
①echo:命令,不能返回值。echo後面可以跟很多個參數,之間用分號隔開;用點號進行連接,如:
echo $myvar1;
echo 1,2,$myvar,"<b>bold</b>";
② print:函數,可以返回一個值,只能有一個參數。
③printf:函數,把文字格式化以後輸出,如:
$name="hunte";
$age=25;
printf("my name is %s, age %d", $name, $age);
④sprintf:跟printf相似,但不列印,而是返回格式化後的文字,其他的與printf一樣。
⑤print_r:通常用於列印變數的相關信息,通常在調試中使用。
print_r(true); //輸出1
print_r(false); //沒有輸出
print_r(null); //沒有輸出
⑥var_mp:此函數顯示關於一個或多個表達式的結構信息,包括表達式的類型與值。
var_mp(true); //輸出 bool(true)
var_mp(false); // bool(false)
var_mp(null); // bool(null)
⑦var_mp()和print_r()的區別:
var_mp返回表達式的類型與值而print_r僅返回結果,相比調試代碼使用var_mp更便於閱讀。
http://hi..com/%D4%BC_%CA%F8/blog/item/fe3f186793f6527d0d33fa4e.html
Ⅳ print、print_r、echo到底有什麼區別
1、性質不同
echo是PHP語言結構而非函數,print和print_r都是函數
2、返回值不同
echo沒有返回值,print和print_r可以有返回值(即便沒有用)
3、輸出值不同
print()只能列印出簡單類型變數的值(如int,string),print_r() 可以列印出復雜類型變數的值(如數組,對象),echo 可以輸出一個或者多個字元串。
4、執行速率不同
在PHP中的執行速率從快到慢依次為:echo(), print(), print_r()
5、用法不同
echo無法被變數函數調用,print和print_r可以被方法調用
Ⅵ Print、echo、print_r有什麼區別
(1) echo和print都可以做輸出,不同的是echo不是函數,沒有返回值,而print是一個函數有返回值,所以相對而言如果只是輸出echo會更快,而print_r通常用於列印變數的相關信息,通常在調試中使用。
(2) print 是列印字元串 。
(3)print_r 則是列印復合類型 如數組、對象。
Ⅶ php echo()和print()、require()和include()函數區別說明
1.echo和print的區別
PHP中echo和print的功能基本相同(輸出),但是兩者之間還是有細微差別的。echo輸出後沒有返回值,但print有返回值,當其執行失敗時返回flase。因此可以作為一個普通函數來使用,例如執行下面的代碼後變數$r的值將為1。
$r
=
print
「Hello
World」;
這意味著print可用在一些復雜的表達式中,而echo則不行。但是,因為echo語句不要求返回任何數值,所已在代碼中echo語句的運行效率要略微快於print語句。
2.include與require的區別
include()與require()的功能也基本相同(包含),但在用法上也有一些不同,include()是有條件包含函數,而require()則是無條件包含函數。例如在下面代碼中,如果變數$a為真,則將包含文件a.php:
if($a){
include(「a.php」);
}
而require()則和include()不同,不管$a取何值,下面的代碼將把文件a.php包含進文件里:
if($a){
require(「a.php」);
}
在錯誤處理方面,使用include語句,如果發生包含錯誤,程序將跳過include語句,雖然會顯示錯誤信息但是程序還是會繼續執行!但requre卻會給你來個致命錯誤。
當然,從字面意思上我們也可以理解七分:requre是很強硬的請求、要求的意思。
3.require_once()和include_once()語句
題外話了,因為長的像,簡單require_once()和include_once()語句分別對應於require()和include()語句。require_once()
和include_once()語句主要用於需要包含多個文件時,可以有效地避免把同一段代碼包含進去而出現函數或變數重復定義的錯誤。
4.空字元串(」)和NULL的區別
PHP中空字元串和NULL都是以值為0存儲的,但是他們的類型並不一樣,你可以試一下echo
gettype(」);和echo
gettype(NULL);你會發現他們列印出來的分別是string和NULL,當然還有0也容易混淆,你可以試試echo
gettype(0);列印一下類型,會發現0的類型是integer(整型),可見字元串(」)、NULL和0是「等值」但不等類型。
5.isset和
empty的區別
從字面意思上我們就可以明白:empty是判斷一個變數是否為「空」,而isset
則是判斷一個變數是否已經設置。但是這里有一點絕對要注意起來:當一個變數值為0,empty
認為這個變數同等於空,即相當於沒有設置。比如當我們檢測$id
變數的時候,當$id=0
,用empty和isset來檢測變數$id是否已經配置,兩都將返回不同的值:empty
認為沒有配置,isset
則能夠取得
$id
的值,看下邊例子:
$id=0;
emptyempty($id)?print
「我是空的」:print
「我是$id
.」;
//結果:我是空的
!isset($id)?print
「我是空的」:print
「我是$id
.」;//結果:我是0
6.==(等)和===(恆等)的區別
回顧上面第四條空字元串(「」)和NULL的區別,再來看一個例子:
」
==
NULL;
」
===
NULL;
運行之後你會發現第一個為true,而第二個則為false!可見==只是比較值是否相等,而===則不但比較值,還會比較類型,更為嚴格。
Ⅷ 請問一下,php 中的 print 和 echo 有什麼區別可能通用不
1.echo和print的區別
PHP中echo和print的功能基本相同(輸出),但是兩者之間還是有細微差別的。echo輸出後沒有返回值,但print有返回值,當其執行失敗時返回flase。因此可以作為一個普通函數來使用,例如執行下面的代碼後變數$r的值將為1。
$r = print "Hello World";
這意味著print可用在一些復雜的表達式中,而echo則不行。但是,因為echo語句不要求返回任何數值,所已在代碼中echo語句的運行效率要略微快於print語句。
Ⅸ php中echo和print的區別
echo 是語法結構,也就是關鍵字,不是函數。使用的時候不用加括弧,加上也可以。顯示多個值的時候可以用逗號隔開。只支持基本類型,布爾型除外,echo true的時候顯示1,echo false的時候啥都沒有。print 和 echo 基本一致。但是print 不支持逗號分隔多個顯示變數的語法。print_r 是函數,不僅可以列印變數的的值,還能顯示變數類型,而且也可以顯示數組和對象這樣復雜的變數類型。print_r() 將把數組的指針移到最後邊。使用 reset() 可讓指針回到開始處
Ⅹ 在php中echo() print() print-r()區別
echo
可以一次輸出多個值,多個值之間用逗號分隔。echo是語言結構(language construct),而並不是真正的函數,因此不能作為表達式的一部分使用。
print()
函數print()列印一個值(它的參數),如果字元串成功顯示則返回true,否則返回false。
print_r()
可以把字元串和數字簡單地列印出來,而數組則以括起來的鍵和值得列表形式顯示,並以Array開頭。但print_r()輸出布爾值和NULL的結果沒有意義,因為都是列印"\n"。因此用var_mp()函數更適合調試。