首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP Heredoc/Nowdoc 語法全解析:大段字符串優雅輸出的最佳實踐

     編輯:PHP 相關知識

PHP Heredoc(<<<) 與 Nowdoc 語法專為大段字符串輸出設計,支援變量解析(Heredoc)與原始輸出(Nowdoc),是模板渲染、SQL 語句、多行文本的利器。

Heredoc 基礎語法

$str = <<< EOF
Here is your string
Multiple lines supported
Variable: {$var}
EOF;
  • 標識符(EOF)自定義,首尾必須成對
  • 結束標識必須獨佔一行,前後無空格
  • 變量需用 {$var} 包裹,否則不解析

實戰範例

$a = "www.example.com";
print <<< JB51

這裡是{$a}的PHP教程
JB51;

Nowdoc:不解析變量(PHP 5.3+)

$str = <<< 'EOF'
不解析 $var
保持原樣輸出
EOF;
  • 標識符用單引號包裹 'EOF'
  • 行為等同於單引號字符串
  • 適合輸出包含 $、{ 等特殊字符的代碼片段

核心技巧總結

技巧說明
結束標識獨佔行否則報語法錯誤
變量用 {$var}複雜表達式用 {$obj->prop}
縮進處理內容縮進會被保留,結束標識不可縮進
引號無需轉義單雙引號自由嵌套
函數調用需先賦值變量,再 {$var} 輸出

常見應用場景

  • SQL 複雜查詢語句
  • HTML 模板片段
  • 郵件/郵件模板內容
  • 配置文件生成
  • 測試數據構造

對比:Heredoc vs 雙引號 vs Nowdoc

特性Heredoc雙引號Nowdoc
變量解析✓✓✗
換行支援✓✗(需 \n)✓
引號轉義✗需轉義✗
適用場景大段模板簡短字符串代碼片段/原始文本
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved