首頁 > 後端開發 > php教程 > PHP XML 標頭

PHP XML 標頭

WBOY
發布: 2024-08-29 13:00:52
原創
743 人瀏覽過

PHP XML 標頭是 PHP 檔案輸出的 XML 內容類型,而不是預設的 text/html 標頭內容。將標頭內容類型設定為 XML 表示以 XML 格式輸出到瀏覽器。 XML 代表可擴充標記語言,表示文件編碼的規則。 PHP 是一種開源程式語言,用於在伺服器端動態設定 Web 內容和應用程式。與 PHP 產生動態 HTML 內容的方式類似,動態 XML 內容也可以在 PHP 中產生。

廣告 該類別中的熱門課程 PHP 開發人員 - 專業化 | 8 門課程系列 | 3次模擬測驗

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

文法

下面給的是 PHP XML 標頭的語法:

<?php header('Content-Type: text/xml'); ?>
登入後複製

以上是使用 PHP XML header 時將 Content-type 改為 XML 的基本語法。

header(header, replace, http_response_code)
登入後複製

基本 Header 函數將原始 HTTP 標頭髮送到客戶端;它在發送輸出之前被呼叫。

參數:

  • header: 指定要傳送的標頭字串,為必填參數。
  • replace: 指示標頭是否應替換先前的標頭或新增相同類型的新標頭。它是一個可選參數,預設為TRUE,即將被取代。 Boolean FALSE 允許多個標頭具有相同類型。
  • http_response_code:強制HTTP回應碼為特定值,是一個可選參數。
<?php
header ("Content-Type:text/xml");
?>
<xml_content>
…………………………
</xml_content>
登入後複製

在 PHP 中,在傳送到瀏覽器的 header() 之前不會發生任何輸出。標頭的 Content-Type 告訴瀏覽器如何處理內容。例如,如果瀏覽器不支援某個 PDF 文件,它將提供使用其他應用程式的選項。它會告訴您使用我們系統上的其他應用程式或要求下載特定的應用程式。

如果Content-type是text/xml,則不指定字元集,因為檔案被視為us-ascii。對於不同的字元集,需要在 header 中指定。對於 PHP 中的 XML 使用,內容類型指定為“application/xml”,字元集指定為“utf-8”。 Content-type 標頭是 HTTP 協定的一部分,告訴客戶端或伺服器期望什麼類型的資料以及如何解釋它。

PHP XML 標頭範例

下面提到了不同的例子:

範例#1

代碼:

<!DOCTYPE html>
<html>
<body>
<?php
header("Content-type: text/xml");
echo "<?xml version='1.0' encoding='UTF-8'?>";
echo "<note>";
echo "Hello, this is first PHP XML header";
echo "\n";
echo "<message>Run the code to see the output</message>";
echo "</note>";
?>
</body>
</html>
登入後複製

輸出:

PHP XML 標頭

這裡的內容類型是 header,現在是 XML 格式。

XML 受到廣泛的 Web 使用者和 XML 工具的支持,這些工具與設備、供應商和平台無關。

Content-type: text/xml; charset="utf-8"
<?xml version="1.0" encoding="utf-8"?>
登入後複製

以上是與 text/xml 一起使用的建議字元集值。 MIME 和 xml 處理器將實體視為 UTF-8 封裝的實體。如果使用 SMTP 請求發送數據,則 xml 必須使用內容傳輸編碼或 base64 編碼。對於其他類型的請求,如 ESMTP、NNTP、HTTP 等,不需要內容傳輸編碼。

Content-type: text/xml; charset="utf-16"
{BOM}<?xml version='1.0' encoding='utf-16'?>
登入後複製

utf-16字元集僅在XML透過二進位乾淨協定透過HTTP傳輸而不執行任何CR和LF轉換時使用。由於 HTTP 是二進位協議,因此這裡不需要內容傳輸編碼。

Content-type: text/xml
{BOM}<?xml version="1.0" encoding="utf-16"?>
登入後複製

這裡省略了字元集參數。在這種情況下,xml 處理器因此假定字元集為「us-ascii」。此預設值適用於使用 HTTP 請求傳輸的 text/xml。

但是,完全不建議在 text/xml 標頭中省略字元集。

Content-type: application/xml; charset="utf-16"
{BOM}<?xml version="1.0"?>
登入後複製

建議與 header 內容類型如 application/xml 一起使用。由於此處提供了字元集,因此 xml 處理器將實體視為 utf-16 編碼。

Content-type: application/xml
<?xml version='1.0'?>
登入後複製

這裡既沒有BOM參數,也沒有charset參數。 XML 不知道處理器,也不應該對 XML 實體的字元集做任何假設。

範例#2

代碼:

<!DOCTYPE html>
<html>
<body>
<?php
header("Content-type: application/xml");
$arr =[
"empName" => "Karthik",
"empid" => 675,
"role" => "UI developer",
"age" => 25,
"city" => "Vizag"
];
echo json_encode($arr);
?>
</body>
</html>
登入後複製

輸出:

PHP XML 標頭

範例 #3

代碼:

<!DOCTYPE html>
<html>
<body>
<?php
header("Content-type: text/xml");
echo "<?xml version='1.0' encoding='UTF-8'?>";
$data = [1,2,3,4,5,6,7,8,9];
echo json_encode($data);
?>
</body>
</html>
登入後複製

輸出:

PHP XML 標頭

結論

至此,我們結束了我們的主題「PHP XML header」。我們已經了解了什麼是 PHP XML 標頭;將內容類型變更為 XML 會為 http 請求-回應帶來很多差異。我們已經分析了 PHP 程式碼中聲明 xml 標頭的語法。字元集是 PHP 的重要部分之一,它描述發送資料的形式。我看到了各種字元集,例如 utf-8 和 utf-16,預設的 us-ascii 字元集。也了解了 php xml 標頭如何與上面列出的一些範例配合使用。

以上是PHP XML 標頭的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板