php 判断图片路径是否存在,yii2中使用php判断图片是否存在

在我们日常的开发中,经常需要用到判断图片是否存在,存在则显示,不存在则显示默认图片,那么我们用到的判断有哪些呢?今天我们就来看下几个常用的方法。

1dcb6d304c936fce3b6f12546a07cc84.png

yii2中使用php判断图片是否存在

1、file_exists()函数

file_exists() 函数检查文件或目录是否存在。

如果指定的文件或目录存在则返回 true,否则返回 false。

eg: file_exists(path);其中的参数path必须是路径,不能是url不然会一直返回false;

注意:

1、文件的任何上级目录,只有写权限时报文件不存在;

2、文件的任何上级目录,只有读权限时也报文件不存在;

3、而当所有上级目录都有执行权限的时候,报文件是存在的,一切都正常。

说明file_exists()在判断文件是否存在的时候是递归判断每个目录是不是有执行权限。

2、file_get_contents()函数

file_get_contents — 将整个文件读入一个字符串

如果失败,file_get_contents() 将返回 FALSE。

果要打开有特殊字符的 URL (比如说有空格),就需要使用 urlencode() 进行 URL 编码。

但是此函数如果请求比较多,文件比较大,那么可能会超时未响应,导致服务器挂掉

要设置file_get_contents函数的超时时间,可以用resource $context的timeout参数,代码如下:$opts = array(

'http'=>array(

'method'=>"GET",

'timeout'=>10,

)

);

$context = stream_context_create($opts);

$html =file_get_contents('http://www.example.com', false, $context);

echo $html;

3、curl方法

实现的功能:

1、实现远程获取和采集内容

2、实现PHP 网页版的FTP上传下载

3、实现模拟登陆:去一个邮件系统,curl可以模拟cookies

4、实现接口对接(API),数据传输等:通过一个平台发送短信啊,抓取和传递所传输的信息。

5、实现模拟Cookie等:登陆的状态下才可以操作一些属性。

如何使用CURL功能:

默认情况加PHP是不支持CURL的,需要在php.ini中开启该功能

;extension=php_curl.dll前面的分号去掉

1 整个操作过程中第一步是用curl_init()函数进行初始化

2.用curl_setopt()函数进行设置选项。

3.设置后,进行执行事务 curl_exec($curl);

4 最后关闭curl_close();

兼容get和post方法的curl;function curl($url, $type = 'get', $post_data = null, $second = 30)

{

$ch = curl_init();

//设置超时

curl_setopt($ch, CURLOPT_TIMEOUT, $second);

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); //

//设置header

curl_setopt($ch, CURLOPT_HEADER, false);

//要求结果为字符串且输出到屏幕上

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

if ('post' == $type) {

curl_setopt($ch, CURLOPT_POST, 1); //开启POST

curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); //POST数据

}

$output = curl_exec($ch);

curl_close($ch);

return $output; //返回或者显示结果

}

相关文章教程推荐:yii教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值