如果这是一个非常新手的问题,我深表歉意,但我正在学习 PHP,并且在编写 Web 服务时遇到了麻烦。
当我使用fopen($fullfilename, 'r')
它时返回两个错误:
警告:fopen() [function.fopen]:不支持远程主机文件访问
警告:fopen(file://filepath) [function.fopen]:无法打开流:找不到合适的包装器
我使用的文件路径是本地计算机上文件的绝对路径。如果这有什么不同,我正在使用 Mac。任何帮助将不胜感激!
如果这是一个非常新手的问题,我深表歉意,但我正在学习 PHP,并且在编写 Web 服务时遇到了麻烦。
当我使用fopen($fullfilename, 'r')
它时返回两个错误:
警告:fopen() [function.fopen]:不支持远程主机文件访问
警告:fopen(file://filepath) [function.fopen]:无法打开流:找不到合适的包装器
我使用的文件路径是本地计算机上文件的绝对路径。如果这有什么不同,我正在使用 Mac。任何帮助将不胜感激!
您可以尝试 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');
应该可以正常工作。
尝试:
$filename = realpath($fullfilename);
var_dump($filename);
它返回什么?如果它返回 bool(false),则路径/文件在此处不存在。
访问本地系统上的文件时,不需要http://
或file:///
。您只需要文件的路径,就像您从机器本身访问一样。
你只需要这样做:
fopen('/path/to/file', 'r')
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 >";
希望有帮助,谢谢