我已經使用PHP創建了一個XML文件。我正在使用DOMDocument方法save()將DOM保存到文件中。我的問題是:是否可以指定我要放置文件的位置?例如,如果我有一個子目錄中的腳本,然後我可以指定我想保存在根目錄中的文件?將XML保存到特定位置
另外我拿它,我將不得不有正確的權限寫入文件夾?
也可以在文件生成後下載文件?我正在使用PHP。
我已經使用PHP創建了一個XML文件。我正在使用DOMDocument方法save()將DOM保存到文件中。我的問題是:是否可以指定我要放置文件的位置?例如,如果我有一個子目錄中的腳本,然後我可以指定我想保存在根目錄中的文件?將XML保存到特定位置
另外我拿它,我將不得不有正確的權限寫入文件夾?
也可以在文件生成後下載文件?我正在使用PHP。
是的,只需指定路徑作爲文件名的一部分。這是DOMDocument::save()
method which you find documented and with samples in the PHP manual的第一個參數。
小代碼示例,演示如何使用:
$domDoc->save($filename);
而$filename
包含路徑到要保存文件。如果您在爲文件找到正確路徑時遇到問題,請參閱您正在使用的文件系統和操作系統的文檔。這可以根據系統而有所不同,但是大多數情況下,無論操作系統差異如何,路徑名都遵循用目錄分隔符表示的層次結構的通用原則。
對於任何與文件類型I/O相關的任務,請注意:運行腳本的進程必須有權在路徑中創建文件 - 正如您可能想象的那樣。只需啓用錯誤報告和日誌記錄(取決於它是您的開發系統還是生產系統)並遵循任何消息以防止這會產生問題以瞭解原因。
也可以在文件生成後下載文件?我正在使用PHP。
是的,你可以,當你通過文件名php://output
將文件保存到標準輸出時,它可以直接下載。下載通常按照原樣顯示在瀏覽器中,如果您想要更改該內容,則將標準過程(將HTTP響應標頭設置爲大小,名稱和內容類型等設置屬性)也適用。相關材料到這一點則是:
是否可以指定一個URL作爲一個文件路徑的姿勢? –
不。你必須編寫一個http文章發送文件到另一臺服務器。 ......除非你正在談論UNC命名的本地服務器路徑......例如\\ myserver \ c \ mystuff \ test.xml –
@JesseOrange:如果您的服務器支持HTTP put,那麼您可以。請參閱http://php.net/wrappers.http; http://php.net/stream_context_set_default; http://php.net/libxml_set_streams_context - 但下一次你應該提供一個例子,這樣你就能清楚地知道你想問什麼。否則,你會得到錯誤的答案。另請參閱xy問題:http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem – hakre
您已經使用[DOM文檔保存::()](http://php.net/manual/en/domdocument.save.php ),只需將路徑更改爲希望文件所在的路徑(假定用戶正在運行腳本,可能是Web服務器用戶,具有寫入權限)。只要下載文件,您只需將它發送到瀏覽器並使用正確的標題。 – prodigitalson
所以我可以字面上有....保存(根/文件夾名/ thefiletosave)。基本上把文件路徑放在函數中? –
@JesseOrange:試試吧,如果事情不起作用,然後問;)http://stackoverflow.com/help – hakre