有时我们在上传商品时,对于图片可能有自己的图片服务器,可以为此服务器搭建一个ftp,在上传商品时商品图片自动通过此功能上传图片到指定服务器中,不需要手动上传。下面小编就给大家介绍一下。希望对大家有所帮助。
代码如下:
//通过PHP自带ftp函数可以在ftp服务器上创建好文件夹
$conn = ftp_connect(“xxx.xxx.xxx.xxx”) or die(“Could not connect”);
ftp_login($conn,’用户名’,密码);
//创建指定文件夹
$wjj=date(‘Ymd’);
$filepath=”/product//”.$wjj;
//查看文件是否存在不存在就创建存在就不创建
//ftp_rawlist()读取ftp指定文件下文件名 读取不到返回false 判断如果没有文件就创建
if(ftp_rawlist($conn,$filepath)===false){
ftp_mkdir($conn,$filepath); //创建文件
}
function put_upload($img_name,$filepath){
//初始化
$ ch =curl_init();
//文件存放到ftp中的详细路径及名称名称可以动态设置
curl_setopt($ch,CURLOPT_URL,”ftp://xxx.xxx.xxx.xxx/”.$filepath.”/xxx.jpg”);
//不输出head 头文件
curl_setopt($ch,CURLOPT_HEADER,0);
//执行后不打印
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
//设置超时时间
curl_setopt($ch,CURLOPT_TIMEOUT,300);
//设置ftp服务器的账号密码,分号前是账号后面是密码
curl_setopt($ch,CURLOPT_USERPWD,”用户名:密码”);
//打开上传功能
curl_setopt($ch,CURLOPT_UPLOAD,1);
//上传文件名称
$localfile = $img_name;
//创建一个 句柄
$fp=fopen($localfile,’r’);
//把上传的数据存入这个句柄
curl_setopt($ch,CURLOPT_INFILE,$fp);
//执行这个文件
$rtn=curl_exec($ch);
//关闭句柄
fclose ($fp);
curl_close($ch);
return $rtn;
}
功能使用上都是没有问题的,对于一些优化,以及执行效率方面,待后期能力提升在进行优化,希望大家多多提点多多指教。一定虚心接受。
作者:吾林爱分享
相关文章
本站已关闭游客评论,请登录或者注册后再评论吧~