當前位置:首頁 » 編程語言 » printphp

printphp

發布時間: 2022-08-10 03:55:24

php中echo和print的區別

PHP中echo和print的區別
PHP中動態輸出HTML內容,是通過print和echo語句來實現的,在實際使用中,
print和echo兩者的功能幾乎是完全一樣。可以這么說,凡是有一個可以使用的地方,另一個也可以使用。但是,兩者之間也還是一個非常重要的區別:在 echo
函數中,可以同時輸出多個字元串,而在 print
函數中則只可以同時輸出一個字元串。同時,echo函數並不需要圓括弧,所以echo函數更像是語句而不像是函數。
echo 和 print 都不是函數,而是語言結構,所以圓括弧都不是必需的。
區別在於:
(1) echo可以輸出多個字元串,像下面這樣:
echo 'a','b','c';
非要加上圓括弧,注意寫成echo ('a','b','c');是錯誤的,應該寫成:
echo ('a'),('b'),('c');
沒有像函數的行為,所以不能用於函數的上下文
(2) print只能輸出一個字元串,它可以表現得像一個函數,比如可以使用:
$ret = print 'Hello World';
所有它能用在更復雜的表達式中。
另外,echo的效率相對比較快!
代碼:
$a='hello ';$b='php world!';echo $a,$b.'
';//echo 可以用逗號分隔字元串變數來顯示
print $a.$b.'
';//而print不能使用逗號,只能用點號分隔,
//print $a,$b.'
';//這里使用逗號時報錯。
?>
分析總結:
echo 命令和print命令相同,沒有區別
echo 函數和print函數有區別。
echo() 無返回值,與echo命令相同
print() 有返回值,成功,返1,false,返0.
printf() 和sprintf()類似,均為格式化輸出,不同的是前者輸出到標准輸出,後者輸出到變數
形如:
echo <<< EOT
EOT;
print <<< EOT
EOT;
的書寫格式,其含義:
<<<運算符,將由自定義分界符間的內容視為字元串,可對其間的變數做處理
EOT自定義分界符,結束時必須位於行首。

❷ php問題 "print()能作為表達式的一部分,echo()不能" 這個說法是什麼意思

意思:
echo
可以一次輸出多個值,多個值之間用逗號分隔。echo是語言結構(language construct),而並不是真正的函數,因此不能作為表達式的一部分使用。
print()
函數print()列印一個值(它的參數),如果字元串成功顯示則返回true,否則返回false。

也就是print是算是半個函數,可以返回true或者false,用於判斷

表達式就是判斷的時候才用的.
print相對比echo要慢,因為它還要返回true或false用於程序判斷.

給個例子吧:
先說明,我這里不是我電腦,我還沒有php環境,只是邏輯判斷出來的.
<?php
$a=print($b);
//保存變數,並且列印出$b的值,這里一定抱錯,因為我沒有聲明$b
if($a)
//如果列印成功
echo 'ok';
else
//列印失敗
echo '對不起,$b沒有被聲明';
//執行結果,報錯.並且輸出:對不起,$b沒有被聲明
?>
這是print的例子

<?php
$b='abc';
$a=echo $b;
?>
執行結果?:報錯,因為echo 不是真正意義上的函數.
其實print也不是.不過它有返回值.

❸ 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

❹ php中echo 與print 的區別

兩者相同點:

  1. echo 和 print 都是語言結構(官方文檔解釋為language construct);

  2. echo 和 print 都是用來輸出字元串的;

  3. 當同時只有一個參數的時候,echo 和 print 後面的括弧(parenthesis)都是可選的,即:echo ($argument1) 等價於 echo $argument1,print(argument)等價於print argument;

  4. echo 和 print 在輸出之前,都會將參數的進行轉換,嘗試轉換為字元串類型。

兩者的區別 :

  1. echo能接受N個字元串類型的參數(注意:有多個參數的時候,不能使用括弧,即echo $arg1,$arg2是正確的,echo($arg1,$arg2)會導致解析錯誤); print只能接收1個字元串類型的參數;

  2. echo沒有返回值; print有返回值,其值永遠為int類型的1。

  3. 在這里引用PHP官方原文檔的說明 : "The major differences toechoare thatprintonly accepts a single argument and always returns 1."

❺ php 中 print 用 雙引號 和單引號的問題

感覺題主理解php執行的順序不太對,不是裡面外面,而應該是左邊右邊。(因為php引擎就是這么解析的, 引號-不論是單引號還是雙引號, 應該從左至右成對出現。)
1、print '你注冊的email是:' . $_SESSION['email'] . ''; (後面拼接 '' 不是必須的, 可以簡化成: print '你注冊的email是:' . $_SESSION['email'])
2、print 「你注冊的email是:" . $_SESSION['email'] (如果雙引號中沒有要解析的內容,這條語句和語句1效果是一樣的)
你的困惑可能是對 php 引擎的解析的疑問,引擎解析(或者php代碼被解析的順序是從上往下,從左至右的,單雙引號使用一般沒有區別(下文特殊情況除外,單獨說明))的,只要保證是成對出現的就行了(因為結尾的引號總是嘗試與最近的引號配對,否則就是語法錯誤了。)
特殊情況:
雙引號中的變數會被解析,比如 :
$a = 'hello, ';
echo "$a 中國";
輸出: hello, 中國
而:
$a = 'hello, ';
echo '$a 中國'; // 注意,單引號中的變數或者其他php語句不會被解析
輸出:
$a 中國。
延伸我的一個疑問, 下面語句輸出什麼呢 ? (我的php版本: 7.4.3 windows)
class ShopProct
{
public $title = "default proct";
public $procerMainName = "main name";
public $procerFistName = "first name";
public $price = 0;

public function getProcer()
{
return $this->procerFistName . " "
. $this->procerMainName;
}
}

$proct1 = new ShopProct();
$proct1->title = "My Antonia";
$proct1->procerMainName = "Cather";
$proct1->procerFistName = "Willa";
$proct1->price = 5.99;
print "author:{ $proct1->getProcer() }\n";
你可能覺得會輸出(實際執行不是):

author: Willa Cather
實際輸出:
author:{ () }
你知道是什麼原因嗎 ?

❻ php實現列印的代碼

分二種情況:
第一種列印到屏上,超簡單就用
<?
echo ("PHP代碼段打錢中...");
?>

第二種,列印到列印機,這種大多都是用JS方法:

1【<a href='javascript:window.print()'>列印此頁</a>】
2.若為按鈕 <input type="submit" value="列印" onClick="javascript:window.print()"/>
3.
Javascript代碼:
<script language="javascript" type="text/javascript">
function printsetup(){wb.execwb(8,1); }
function printpreview(){wb.execwb(7,1);}
function printit(){wb.execwb(6,6)}
function printclose(){wb.execwb(45,1);}
//WebBrowser.ExecWB(1,1) 打開
//Web.ExecWB(2,1) 關閉現在所有的IE窗口,並打開一個新窗口
//Web.ExecWB(4,1) 保存網頁
//Web.ExecWB(6,1) 列印
//Web.ExecWB(7,1) 列印預覽
//Web.ExecWB(8,1) 列印頁面設置
//Web.ExecWB(10,1) 查看頁面屬性
//Web.ExecWB(15,1) 好像是撤銷,有待確認
//Web.ExecWB(17,1) 全選
//Web.ExecWB(22,1) 刷新
//Web.ExecWB(45,1) 關閉窗體無提示
</script>
CSS代碼:
<style media="print" type="text/css">
.Noprint{display:none;}
.NextPage{page-break-before:always;}
</style>
網頁代碼:
<object id="wb" height="0" "width=0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" name="wb"></object>
<div class="Noprint" style="text-align: right;border: 1px solid #99BCFC;margin:0px 5px 0px 5px;padding:2px 5px 2px 5px;background-color: #EBF1FA;">
<input type="button" onclick="javascript:printsetup();" name="button2" id="button2" value="頁面設置"/>
<input type="button" onclick="javascript:printpreview();" name="button3" id="button3" value="列印預覽"/>
<input type="button" onclick="javascript:printit();" name="button4" id="button4" value="列印"/>
<input type="button" onclick="javascript:printclose();" name="button" id="button" value="關閉"/>
</div>

❼ PHP中echo和print的區別

PHP中echo和print的區別
PHP中動態輸出HTML內容,是通過print和echo語句來實現的,在實際使用中, print和echo兩者的功能幾乎是完全一樣。可以這么說,凡是有一個可以使用的地方,另一個也可以使用。但是,兩者之間也還是一個非常重要的區別:在 echo 函數中,可以同時輸出多個字元串,而在 print 函數中則只可以同時輸出一個字元串。同時,echo函數並不需要圓括弧,所以echo函數更像是語句而不像是函數。
echo 和 print 都不是函數,而是語言結構,所以圓括弧都不是必需的。

區別在於:
(1) echo可以輸出多個字元串,像下面這樣:
echo 'a','b','c';
非要加上圓括弧,注意寫成echo ('a','b','c');是錯誤的,應該寫成:
echo ('a'),('b'),('c');
沒有像函數的行為,所以不能用於函數的上下文
(2) print只能輸出一個字元串,它可以表現得像一個函數,比如可以使用:
$ret = print 'Hello World';
所有它能用在更復雜的表達式中。

另外,echo的效率相對比較快!

代碼:
<?php
$a='hello ';$b='php world!';echo $a,$b.'<br />';//echo 可以用逗號分隔字元串變數來顯示
print $a.$b.'<br />';//而print不能使用逗號,只能用點號分隔,
//print $a,$b.'<br />';//這里使用逗號時報錯。
?>

分析總結:
echo 命令和print命令相同,沒有區別
echo 函數和print函數有區別。
echo() 無返回值,與echo命令相同
print() 有返回值,成功,返1,false,返0.
printf() 和sprintf()類似,均為格式化輸出,不同的是前者輸出到標准輸出,後者輸出到變數
形如:
echo <<< EOT
EOT;
print <<< EOT
EOT;
的書寫格式,其含義:
<<<運算符,將由自定義分界符間的內容視為字元串,可對其間的變數做處理
EOT自定義分界符,結束時必須位於行首。

❽ 在php中print為什麼要有返回值

print是列印函數

❾ PHP中print()函數是什麼

print() 函數輸出一個或多個字元串。

注釋:print() 函數實際不是一個函數,所以您不必對它使用括弧。

提示:print() 函數比echo()稍慢。


例子:輸出字元串變數($str)的值

<?php
$str="IloveShanghai!";
print$str;
?>

運行結果:I love Shanghai!

熱點內容
webrtc伺服器搭建哪家價格低 發布:2024-04-27 01:30:08 瀏覽:139
oracle資料庫無法啟動 發布:2024-04-27 01:29:20 瀏覽:612
倪萍超級訪問 發布:2024-04-27 01:23:29 瀏覽:704
java集合循環 發布:2024-04-27 01:17:18 瀏覽:593
解壓喪屍片 發布:2024-04-27 01:02:28 瀏覽:370
編程師加班 發布:2024-04-27 00:49:24 瀏覽:910
lol四川伺服器雲空間 發布:2024-04-27 00:42:08 瀏覽:934
卡宴怎麼看配置 發布:2024-04-27 00:41:08 瀏覽:942
央視影音緩存視頻怎麼下載視頻 發布:2024-04-27 00:25:55 瀏覽:584
手機緩存的視頻怎麼看 發布:2024-04-27 00:11:05 瀏覽:58