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

如何使用 file_exists 访问 ftp 服务器外部的文件

如何使用 file_exists 访问 ftp 服务器外部的文件

PHP
暮色呼如 2022-05-27 16:33:53
我想监控参考数据是否已上传或存在于我们的服务器中。这是我试过的..<?php$path= '\\Iserver-s.com\iserver\2019_Plans\013036456-2018\PDF-DATA\ASSEMBLE\013036456-2018.pdf';if (file_exists($path)) {    $tbody .= '<td>DATA ON SERVER</td>';} else {    $tbody .= '<td>NO DATA</td>';}?>如果文件存在,它应该显示DATA ON SERVER在我的表 td 上。但NO DATA即使文件存在,它也总是输出。我认为它不会访问 ftp 服务器之外的文件或目录。我目前正在使用连接了 Nppfttp 插件的 Notepad++ ..这就是我们在公司内存储和访问我们网站的全部内容。这是我的 php 所在的路径:ftp://appss5080/Ext/Qpd/Plan_Monitoring/index.php这就是我试图访问的检查文件是否存在(在我的本地 C:)C:/Users/ps5178/Desktop/6490700-2018-MISTAKE-10-18/6490700-201845.pdf那么,如何访问它之外的文件呢?
查看完整描述

3 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

试试这个解决方案:


// the server you wish to connect to - you can also use the server ip ex. 107.23.17.20

$ftp_server = "ftp.example.com";


// set up a connection to the server we chose or die and show an error

$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");

ftp_login($conn_id,"ftpserver_username","ftpserver_password");

// check if a file exist

$path = "/SERVER_FOLDER/"; //the path where the file is located


$file = "file.html"; //the file you are looking for

$check_file_exist = $path.$file; //combine string for easy use


$contents_on_server = ftp_nlist($conn_id, $path); //Returns an array of filenames from the specified directory on success or FALSE on error. 

// Test if file is in the ftp_nlist array

if (in_array($check_file_exist, $contents_on_server)) 

{

   echo "<br>";

   echo "I found ".$check_file_exist." in directory : ".$path;

}

else

{

   echo "<br>";

   echo $check_file_exist." not found in directory : ".$path;  

};


// output $contents_on_server, shows all the files it found, helps for debugging, you can use print_r() as well

var_dump($contents_on_server);


// remember to always close your ftp connection

ftp_close($conn_id);


查看完整回答
反对 回复 2022-05-27
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

可能的问题/解决方案

首先:您是否验证了文件的权限?

第二:使用 ftp_get() ( https://www.php.net/manual/en/function.ftp-get.php ),这将是最方便的。


查看完整回答
反对 回复 2022-05-27
?
HUH函数

TA贡献1836条经验 获得超4个赞

我已经在我的本地检查了你的代码。这是工作文件。我已经检查了我的本地文件路径。


我认为你的路径有问题。确认路径是否正确。


并检查应该有 755 或 777 的文件权限。


这是我的代码


<?php

$path = 'C:\xampp\htdocs\test\XSCAssets\idea\157406374721215421965dd24e83bf2e7.png';


if (file_exists($path)) {

    $tbody = '<td>DATA ON SERVER</td>';

} else {

    $tbody = '<td>NO DATA</td>';

}

echo $tbody;

?>


查看完整回答
反对 回复 2022-05-27
  • 3 回答
  • 0 关注
  • 159 浏览

添加回答

举报

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