为了账号安全,请及时绑定邮箱和手机立即绑定

本地测试成功,上传服务器后,打开文件失败(fopen和file_exists)

本地测试成功,上传服务器后,打开文件失败(fopen和file_exists)

PHP
慕标琳琳 2019-03-13 20:48:19
1、在本地是可以运行的;2、上传服务器后,fopen和file_exists都执行失败,文件地址我打印过,没有问题,特意把备用地址打开,还是失败 $filer = fopen($files, "r") or webalert('无法打开文件!'); if(!file_exists($wenjian)){ $wenjian = "shujuku/精选优质商品清单-2018-06-06.dat"; //如有备用数据库,启动备用数据库 echo "数据库 $wenjian 不存在,启用备用数据库\r\n"; } 3、看了下网上说是要把文件权限设置777,我试过了,但是还是没有反应。 ======================================================================谢谢各路老铁的解答,使用fopen和file_exists时候,我都转码过 function charaget($data){ if(!empty($data) ){ $fileType = mb_detect_encoding($data , array('UTF-8','GBK','LATIN1','BIG5')) ; if( $fileType != 'GB2312'){ $data = mb_convert_encoding($data ,'GB2312' , $fileType); } } return $data; } 使用后,代码都可以打印出正确的路径,就是读不到文件,最后转换成UTF-8后,服务器上就正常了,不知道还有什么其他方法没。
查看完整描述

5 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

1、文件权限
2、文件夹权限

都设置成777,应该就可以了

查看完整回答
反对 回复 2019-03-18
?
慕仙森

TA贡献1827条经验 获得超7个赞

单纯的把单个文件设置成777是没用的,文件夹也需要设置权限

查看完整回答
反对 回复 2019-03-18
?
森栏

TA贡献1810条经验 获得超5个赞

中文的话,最好转换一下文件名字符编码为gbk
iconv函数了解一下

查看完整回答
反对 回复 2019-03-18
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

我觉得还有一种可能,就是你服务器上代码执行的路径和本地执行的不一样,所以你文件的相对路径如果还按照那么写的话,有可能不对

查看完整回答
反对 回复 2019-03-18
  • 5 回答
  • 0 关注
  • 343 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信