2016-08-14 90 views
0

我在我的网站上有一个名为GameUploads的文件夹,我试图用is_dir来测试它是否是一个目录,我认为它与文件夹一样。我运行的php代码是在.../php/test.php文件夹中,我试图达到的是.../GameUploads /其中'...'是网页的网址。我的代码是在这里:我该如何解决这个php is_dir代码?

//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='..'这回真。我想我试图找到一种方法来检查GameUploads是否是来自php文件的目录。我怎样才能做到这一点?我不太了解如何使用is_dir非常好...我已经通过php.net和w3schools读过

+1

'is_dir()'http://php.net/manual/en/function.is-dir.php *“告诉文件名是否是一个目录”* - 你究竟想要做什么;你是否试图检查它是否存在?如果是'file_exists()'http://php.net/manual/en/function.file-exists.php *“检查文件或目录是否存在”*。 –

+0

雅我刚刚读过php.net上的file_exists,我试着用这个,但无济于事。我用'$ check_dir ='.../GameUploads''。 '...'是我的网站网址,然后是我尝试检测的文件夹。它仍然返回错误 – Pixelknight1398

+1

*“作为我的网站URL”* - 如果我正确阅读,您可能无法检查URL。错误报告会向您发出警告,如果这是这种情况。 '... /'也是无效的。如果它有3个点,则使用2.'../' –

回答

2

“是完整的服务器路径的作品!谢谢哈哈我很满意了。我现在很好奇,为什么服务器的路径工作,但不是网站的网址。我将不得不再次闲逛,但感谢! - Pixelknight1398"

正如我在评论中说:

使用一个完整的服务器路径。

即:

/var/usr/public/the_folder_in_question 

您可能需要在末尾添加结尾斜杠。

“我现在很好奇,为什么服务器路径工作,但不是网站的URL。”

按一下手册指出:

作为PHP 5.0.0,这个功能也可以用于某些URL封装。请参阅Supported Protocols and Wrappers以确定哪些包装器支持stat()功能族。

您将需要使用卷曲相反,如果是供您使用。

0

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