[英]function file_exists not working in php
我一直在嘗試查找目錄中是否存在file_exist。 如果不是,我想使用其他圖像。 但是當我使用file_exists函數時,它總是返回false。
我使用的代碼是
while($r=mysql_fetch_row($res))
{
if(!file_exists('http://localhost/dropbox/lib/admin/'.$r[5]))
{
$file='http://localhost/dropbox/lib/admin/images/noimage.gif';
}
else
$file='http://localhost/dropbox/lib/admin/'.$r[5];}
但是,即使文件退出,該函數也始終返回false。 我通過使用
<img src="<?php echo 'http://localhost/dropbox/lib/admin/'.$r[5]; ?>" />
這樣可以正確顯示圖像。
請有人幫我
file_exists
使用文件系統路徑 ,而不是URL。 您可以在瀏覽器中使用URL來通過網絡上的Web瀏覽器和Web服務器訪問PHP腳本。 盡管PHP腳本本身可以訪問本地文件系統並使用它,但它不會通過網絡堆棧來訪問文件。
因此,請使用諸如file_exists('C:\\\\foo\\\\bar\\\\dropbox\\\\lib\\\\admin\\\\' ...)
。
file_exists
不支持使用HTTP的地址(您可以看到此信息,因為stat
不包括在HTTP支持的包裝器列表中 )。 如file_exists
文檔所述,可以使用某些包裝程序(例如FTP)檢查遠程文件,但是無法通過HTTP進行檢查,因此file_exists
將始終返回false。
假設此文件位於本地計算機上(這是localhost
建議的,則需要使用本地文件路徑進行訪問。很難猜測這可能對您有什么用,但看起來像/var/www/dropbox...
file_exists()
檢查本地文件系統中是否存在文件。 您正在傳遞一個URL。 將其更改為您的保管箱目錄的本地路徑,它應該可以工作:
if(file_exists('/path/to/your/dropbox'))
函數file_exists
僅可用於PHP中stat()
函數支持的URL協議。
當前,此包裝器不支持http
協議。
您正在將URL傳遞給file_exists函數,這是錯誤的參數。 而不是通過您的本地路徑。
要了解有關file_exist()函數的更多信息,請閱讀此php手冊:
您正在將URL傳遞給file_exists函數,這是錯誤的。 而不是傳遞文件夾的本地路徑。
while($r=mysql_fetch_row($res))
{
if(!file_exists('/dropbox/lib/admin/'.$r[5]))
{
$file='/dropbox/lib/admin/images/noimage.gif';
}
else
$file='/dropbox/lib/admin/'.$r[5];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.