PHP判断远程图片或文件是否存在的实现代码。

最简单的方法就是用fopen(),看看文件能否打开,能打就文件当然就存在。

<?php
$url = 'http://www.jbxue.com/images/test.jpg';
if( @fopen( $url, 'r' ) ) 
{ 
    echo 'File Exits';
} 
else 
{
    echo 'File Do Not Exits';
}
?>



语法:fopen(filename,mode,include_path,context)



参数

描述


filename

必需。规定要打开的文件或 URL。


mode

必需。规定要求到该文件/流的访问类型。可能的值见下表。


include_path

可选。如果也需要在 include_path 中检索文件的话,可以将该参数设为 1 或 TRUE。


context

可选。规定文件句柄的环境。Context 是可以修改流的行为的一套选项。


mode 参数的可能的值


mode

说明


"r"

只读方式打开,将文件指针指向文件头。


"r+"

读写方式打开,将文件指针指向文件头。


"w"

写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。


"w+"

读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。


"a"

写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。


"a+"

读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。


"x"



创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。


这和给底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。


此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件。


"x+"



创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。


这和给底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。


此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件