-1

我有子域 sub.domain.com。子域指向我的网络服务器上我的根目录的根目录/子目录。现在我在服务器 root/pdf 的另一个目录上有 pdf。如何检查特定的 pdf 是否存在,如果存在,我想将文件复制到子域的临时目录。

如果我调用 php 脚本 sub/check.php 并尝试检查存在的 pdf:

$filename = "http://www.domain.com/pdf/1.pdf";
if (file_exists($filename)) 
{
    "exists";
} 
else 
{
    "not exists";
}

它总是显示:不存在。如果我将 url 放入浏览器中 - 将显示 pdf。

/sub-folder 中的 php 脚本如何访问 root 或 root/pdf 中的文件?

再见乔吉

4

2 回答 2

0

file_exists()功能不能那样工作。它不需要远程 URL。
该函数用于检查文件系统中存在的文件。

在这里查看手册

使用 cURL 来完成此操作。

    <?php
    $ch = curl_init("https://www.google.co.in/images/srpr/logo4w.png"); //pass your pdf here

    curl_setopt($ch, CURLOPT_NOBODY, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);
    curl_exec($ch);
    $retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
    if($retcode==200)
     {
      echo "exists";
     }
   else
     {
      echo "not exists";
     }

    ?>
于 2013-09-12T07:36:12.607 回答
0

如果文件存在,file_exists() 在机器上本地查找。但是您正在做的是使用 URL。

由于您说您的脚本位于根文件夹中,因此您需要进行更改

$filename = "http://www.domain.com/pdf/1.pdf";

进入

$filename = realpath(dirname(__FILE__)) . "/pdf/1.pdf"; // first part gets current directory
于 2013-09-12T07:51:42.737 回答