簡體   English   中英

如何將PHP網頁的內容保存到XML文件?

[英]How to save the contents of a PHP webpage to an XML file?

我目前有一些代碼可以為Oracle陣列中的所有聯系人生成XML代碼。 我試圖在PHP中使用內置的XML方法,但是並沒有給我足夠的控制權來獲取正確的架構。 到目前為止,我一直在運行PHP文件,該文件將所有XML代碼回顯到網頁,然后在頁面中選擇所有文件,將其粘貼到空白的記事本文件中並將其另存為XML。 目前,它可以完美運行,但從本質上講,我希望能夠運行PHP文件並最終獲得具有動態命名約定(writing_request_yyyymmddtttt.xml)的XML文件。 有什么方法可以輕松地完成此任務,從而使流程更加自動化? 這是代碼片段:

echo    htmlspecialchars('<contact contactID="'.$row["UNIQUE ID"].'" action="AddOrModify">')."<br>".
    htmlspecialchars('<contactField name="LastName">'.$row["LAST NAME"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="FirstName">'.$row["FIRST NAME"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="MiddleName">'.$row["MIDDLE INITIAL"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="Country">'.$row["COUNTRY"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="Code">'.$row["CODE"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 1"].'">'.$row["CUSTOM VALUE 1"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 2"].'">'.$row["CUSTOM VALUE 2"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 3"].'">'.$row["CUSTOM VALUE 3"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 4"].'">'.$row["CUSTOM VALUE 4"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 5"].'">'.$row["CUSTOM VALUE 5"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 6"].'">'.$row["CUSTOM VALUE 6"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 7"].'">'.$row["CUSTOM VALUE 7"].'</contactField>')."<br>".
    htmlspecialchars('<contactField name="CustomField" customName="'.$row["CUSTOM LABEL 8"].'">'.$row["CUSTOM VALUE 8"].'</contactField>')."<br><br>".


    htmlspecialchars('<contactPointList>')."<br>".

    htmlspecialchars('<contactPoint type="Voice">')."<br>".
    htmlspecialchars('<contactPointField name="Label">'.$row["PHONE LABEL 1"].'</contactPointField>')."<br>".
    htmlspecialchars('<contactPointField name="CountryCode">'.$row["PHONE 1 COUNTRY CODE"].'</contactPointField>')."<br>".
    htmlspecialchars('<contactPointField name="Number">'.$row["PHONE 1"].'</contactPointField>')."<br>".
    htmlspecialchars('<contactPointField name="Extension">'.$row["PHONE EXTENSION 1"].'</contactPointField>')."<br>".
    htmlspecialchars('</contactPoint>')."<br><br>".

    htmlspecialchars('<contactPoint type="Voice">')."<br>".
    htmlspecialchars('<contactPointField name="Label">'.$row["PHONE 2 LABEL"].'</contactPointField>')."<br>".
    htmlspecialchars('<contactPointField name="CountryCode">'.$row["PHONE 2 COUNTRY CODE"].'</contactPointField>')."<br>".
    htmlspecialchars('<contactPointField name="Number">'.$row["PHONE 2"].'</contactPointField>')."<br>".
    htmlspecialchars('<contactPointField name="Extension">'.$row["PHONE EXTENSION 2"].'</contactPointField>')."<br>".
    htmlspecialchars('</contactPoint>')."<br><br>".

    htmlspecialchars('<contactPoint type="Email">')."<br>".
    htmlspecialchars('<contactPointField name="Label">'.$row["EMAIL LABEL 1"].'</contactPointField>')."<br>".
    htmlspecialchars('<contactPointField name="Address">'.$row["EMAIL 1"].'</contactPointField>')."<br>".
    htmlspecialchars('</contactPoint>')."<br><br>".
    htmlspecialchars('</contactPointList>')."<br><br>".
    htmlspecialchars('</contact>')."<br><br>";

這正在oci_fetch_array循環中運行,該循環還驗證了所有數據。 任何人有任何想法嗎?

不要使用echo ,而是將內容保存為變量,然后使用fopen()創建一個新文件,然后使用fwrite()對其進行寫入。

http://php.net/manual/en/function.fwrite.php http://php.net/manual/en/function.fopen.php

我認為您不應該在代碼中使用<br> ,似乎要換行,在Windows上使用"\\n"代替或"\\r\\n"PHP_EOL也是另一種選擇。

暫無
暫無

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

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