如果这是一个非常新手的问题我很抱歉,但我正在学习PHP并且在编写Web服务时遇到了麻烦。
当我使用fopen($fullfilename, 'r')
时,它会返回两个错误:
警告:fopen()[function.fopen]:远程主机文件访问没有 支持的
警告:fopen(file:// filepath)[function.fopen]:无法打开 stream:找不到合适的包装器
我正在使用的文件路径是本地计算机上文件的绝对路径。如果这有任何区别,我正在使用Mac。任何帮助将不胜感激!
答案 0 :(得分:0)
您可以尝试从
的php文件中获取相对路径fopen($fullfilename, 'r')
行可以找到
例如:
/*
/usr/You/Documents/project/myproject/myfolder/myscript.php
/usr/You/Documents/project/myproject/mydata/datafile.txt
*/
$fullfilename = "../mydata/datafile.txt";
$contents = fopen($fullfilename, 'r');
应该可以正常工作。
答案 1 :(得分:0)
访问本地系统上的文件时,您不需要http://
或file:///
。您只需要文件的路径,就像从计算机本身访问一样。
你只需要这样做:
fopen('/path/to/file', 'r')
答案 2 :(得分:0)
echo( "<pre>");
$fullfilename = "C:\Users\Documents\hey.txt";
$gg = fopen($fullfilename, 'r') or die("file doesnt exist");
// for entire read of doc use file_get_contents($fullfilename)
$readtext = fread($gg, 3000); //read 3000 chars of doc
fclose($gg);
echo $readtext;
echo "</pre >";
希望它有所帮助,谢谢
答案 3 :(得分:0)
尝试:
$filename = realpath($fullfilename);
var_dump($filename);
它返回什么?如果它返回bool(false),则路径/文件不存在于此处。