簡體   English   中英

PHP字符串與變量集成的連接

[英]PHP String Concatenation with variable integration

在使用Classic ASP工作了15年之后,我是PHP的新手,而且我已經遇到了連接等基礎問題。 請你能幫我解釋一下這有什么問題:

$pstr_out .= '<a href="pg='.$pg-1.'" id="Page'.$pg-1.'Link">&laquo;&nbsp;Previous</a>&nbsp;\r';

非常感謝。

如果您真的想要連接表達式,請使用括號

$pstr_out .= '<a href="pg='. ($pg-1) .'" id="Page'. ($pg-1) .'Link">&laquo;&nbsp;Previous</a>&nbsp;\r';
echo $pstr_out;

最可靠的是$ pg-1部分

取決於PHP給出的錯誤

$pstr_out .= '<a href="pg='.($pg-1).'" id="Page'.($pg-1).'Link">&laquo;&nbsp;Previous</a>& nbsp;\r';

問題是

 $pg-1

做這個

$page = $pg-1;


$pstr_out .= '<a href="pg='.$page.'" id="Page'.$page.'Link">&laquo;&nbsp;Previous</a>& nbsp;\r';

它必須是什么

准備好所有數據后,首先將其打印出來

<a href="pg=<?=$pg?>" id="Page<?=$pg?>Link">&laquo;&nbsp;Previous</a>&nbsp;
$x = $pg-1;
    $pstr_out .= '<a href="pg='.$x.'" id="Page'.$x.'Link">&laquo;&nbsp;Previous</a>&nbsp;\r';

你得到一個解析錯誤的真正原因是因為php認為1.'string'是一個帶小數點的浮點數然后搞砸了。 整數+周期組合后需要一個空格: 1 . 'string' 1 . 'string'

更糟糕的是,添加空格是不夠的 - 你也需要括號,不要將php與連接與算術混淆: '<a href="pg=' . ($pg - 1) . '" id="Page' . ($pg - 1) .'Link">&laquo;&nbsp;Previous</a>&nbsp;\\r'

最后,你最后的'\\ r'有兩個原因:

  1. 你真的可能不想要\\ r - 你想要\\ n(* nix / mac)或\\ r \\ n(windows)。
  2. 你有單引號。 控制字符僅用雙引號解析,因此您需要“\\ n”或“\\ r \\ n”,或者在輸出中得到一個字面反斜杠+字母。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM