PHP判断远程图片文件是否存在
在php中我们利用file_exists来判断本地的文件是否存在,那么如何用PHP判断远程文件是否存在呢,下在我们一起来看一个例子,希望此例子是你需要用到的,代码如下:
- <?php
- /*
- *用PHP判断远程图片(文件)是否存在
- *http://www.phpfensi.com
- */
- function check_remote_file_exists($url) {
- $curl = curl_init($url);
- // 不取回数据
- curl_setopt($curl, CURLOPT_NOBODY, true);
- // 抓取跳转后的内容
- curl_setopt($curl, CURLOPT_FOLLOWLOCATION,1);
- // 发送请求
- $result = curl_exec($curl);
- $found = false;
- // 如果请求没有发送失败
- if ($result !== false) {
- // 再检查http响应码是否为200
- $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
- var_dump($statusCode);
- if ($statusCode == 200) {
- // $retcode >= 400 -> not found, $retcode = 200, found.
- $found = true;
- }
- }
- curl_close($curl);
- return $found;
- }
- $exists = check_remote_file_exists('http://www.phpfensi.com /allimg/090403/140941513J2-2.jpg');
- if ($exists) {
- echo '存在';
- } else {
- echo '不存在';
- }
- $exists = check_remote_file_exists('http://www.phpfensi.com /allimg/090403/140941513J2-4.jpg');
- if ($exists) {
- echo '存在';
- } else {
- echo '不存在';
- }
- exit;
- ?>
还有一种简单的方法,但效率是低下的,代码如下:
strstr(current(get_headers($url)), "200")