2010-08-23 63 views
1

HI。我想從xlink創建的xml中打開本地文件,我已經解析了$ resourceRef變量中的文件路徑,它看起來像沒有引號的file:/./birds/birds.txt。請有人告訴我爲什麼我不能打開它。這裏是我的代碼無法使用fopen()打開本地文件

$fh = fopen($resourceRef, 'r'); 
$theData = fread($fh, filesize($resourceRef)); 
fclose($fh); 
echo $theData; 

我得到這個錯誤

警告:的fopen(文件:/./鳥/ feathers.txt)[function.fopen]:未能打開流:在無效的參數C:\ xampp \ htdocs \ test.php 31行

請有人指導我。

+1

'file:/./ birds/birds.txt'不是有效的URI。 – jason 2010-08-23 17:47:22

+0

你能粘貼你得到這個URI的XML嗎?你是否在文件前加上:/到URL?原諒我的無知,但我認爲xlink是一個規範 - 它也是一種工具嗎? – 2010-08-23 18:30:34

回答

1

你的URI看起來不正確,它應該是file://birds/birds.txt或只是birds/birds.txt

+0

file:/./ birds/birds .txt位於xml文件中,通過使用xlink完成。我怎麼能改變它..有或將會有很多...請告訴我有沒有辦法做到這一點。 – 2010-08-23 17:58:33

+0

簡單的str_replace('file:/','file://')如何? ? – DASPRiD 2010-08-23 18:30:42

+0

我想我會嘗試這聽起來更好,謝謝DSAPRiD – 2010-08-23 19:10:14

0

參數應該是爲特定平臺合適的路徑(寡婦 「C:\\目錄(...)」),或正確的URI(文件://(...))

+0

文件:/./ birds/birds.txt位於xml文件中,通過使用xlink完成。我怎樣才能改變它..有或將會很多 – 2010-08-23 17:55:57

+0

使用字符串替換函數來替換「file:/./」到「file://./」這將更正字符串到有效的URI,但仍然必須處理相對路徑(路徑中的點)以使其正常工作,php腳本應與xlink生成的文件位於同一目錄中 – canni 2010-08-23 17:58:39

+0

如果我拿走文件:/./ from file:/./ birds/birds.txt所以它將是鳥/ birds.txt,它的工作原理。我認爲這應該會更好。所有的鏈接和圖片,txt文件都在一個單獨的文件夾中。 你是否認爲我可以通過使用字符串替換或其他功能來做到這一點。 – 2010-08-23 18:01:33