我该如何解决这个php is_dir代码?

时间:2016-08-14 01:20:20

标签: php

我的网站中有一个名为GameUploads的文件夹,我正在尝试使用is_dir来测试它是否是一个目录,我假设它与文件夹相同。我运行的php代码在... / php / test.php中,我想要访问的文件夹是... / GameUploads /其中'...'是网页的网址。我的代码在这里:

//initiate file check
  $check_dir = "../../GameUploads/";

  if(is_dir($check_dir)){
    echo "$check_dir is a directory";
  }
  else{
    echo "$check_dir is not a directory";
  }

  clearstatcache();

我不确定我尝试用$check_dir做什么,但最初只是.../GameUploads返回false,然后我输入$check_dir='..',返回true。我想我正试图找到一种方法来检查GameUploads是否是php文件中的目录。我怎样才能做到这一点?我不太了解如何使用is_dir ......我已经通过php.net和w3schools阅读了

2 个答案:

答案 0 :(得分:2)

  

"是完整的服务器路径有效!谢谢哈哈,我现在很满意。我现在很好奇为什么服务器路径工作但不是网站URL。我将不得不四处寻找,但再次感谢! - Pixelknight1398"

正如我在评论中所述:

使用完整的服务器路径。

即:

/var/usr/public/the_folder_in_question 

您可能必须在最后添加一个尾部斜杠。

  

"我现在很好奇服务器路径的工作原理,但不是网站网址。"

根据手册所述:

从PHP 5.0.0开始,此函数也可以与某些URL包装器一起使用。请参阅Supported Protocols and Wrappers以确定哪些包装器支持stat()系列功能。

如果您可以使用CURL,则需要使用CURL。

答案 1 :(得分:0)

您必须使用完整的服务器路径,因为$ check_dir检查整个服务器目录,而不仅仅是公共转发。