虎泰克博客

ThinkPHP中使用SendCloud发送多个附件的邮件


嗯,今天公司让我写个SendCloud的邮件类,用来给客户发送各种邮件,主要针对的是触发邮件,本来写

嗯,今天公司让我写个SendCloud的邮件类,用来给客户发送各种邮件,主要针对的是触发邮件,本来写的差不多了,但是主管跟我说要支持多附件,一看到SendCloud官网给的代码里只有一个附件的我就懵逼了。好吧,厚着脸皮上呗,首先看下一个文件和多个文件上传有什么区别

虎x泰umx克lod新ehem闻nn网puf版权所有,请勿未授权转载!!!

QQ图片20160725134751.png

虎nx泰rndij克umqk新mbix闻w网iyua版权所有,请勿未授权转载!!!

这是单文件上传的

虎rqoau泰zx克tjhgk新n闻oxbeu网sbqt版权所有,请勿未授权转载!!!

QQ截图20160725134915.png

虎wo泰cgikw克ucpf新mo闻vxfyc网hh版权所有,请勿未授权转载!!!

这是多文件上传的

虎hj泰rjh克kbths新ordv闻ypk网mc版权所有,请勿未授权转载!!!

然后查看官网给的附件的案例

虎b泰r克cp新hvfu闻tevxo网iica版权所有,请勿未授权转载!!!

QQ截图20160725135348.png

虎nkf泰fdd克qilvw新aob闻fi网nnu版权所有,请勿未授权转载!!!

由此可知,只要遍历附件地址数组的时候重复2-6行即可

虎zab泰vt_m克vl新d闻arn网y版权所有,请勿未授权转载!!!

QQ截图20160725135420.png

虎yoc泰dq克tv新e闻fj网hds版权所有,请勿未授权转载!!!


其中这里需要注意的一点是分隔符,即boundary。 boundary用于作为请求参数之间的界限标识,例如参数1和参数2之间需要有一个明确的界限,这样服务器才能正确的解析到参数1和参数2。但是分隔符并不仅仅是boundary,而是下面这样的格式:-- + boundary。例如这里的boundary为 ----WebKitFormBoundaryFsA1AIs8VyxmWEZd,那么参数分隔符则为:

虎hpy泰brle克jgk新hyxm闻kyl网nt版权所有,请勿未授权转载!!!

------WebKitFormBoundaryFsA1AIs8VyxmWEZd

虎kjit泰z克v新m闻juk网a版权所有,请勿未授权转载!!!

虎ssemj泰qmrps克m新c闻bix网dzmyg版权所有,请勿未授权转载!!!

而结尾的时候则是以’--‘加上----WebKitFormBoundaryFsA1AIs8VyxmWEZd加上‘--’,因此整个代码是这样子

虎i泰vpcc克sjj新wxhq闻s网zi版权所有,请勿未授权转载!!!

QQ图片20160725135808.png

虎lq泰hvsv克hz新xfjp闻vrf网bojnp版权所有,请勿未授权转载!!!


虎xtzu泰pit克kotx新rq闻un网qqy版权所有,请勿未授权转载!!!

然后差不多这样了,附件是写的类

SendCloud.class.zip



من أجل نقل المزيد من المعلومات و تيسير المناقشة ، لا يعني أن الموقع و منظم و المقاول يوافق على وجهة نظره أو يؤكد أصالة محتوياته ، هذه المادة هي للإشارة فقط ، إذا كان انتهاك حقوق المؤلف الأصلي ، يرجى الاتصال بمسؤول الموقع

تسجيل الدخول لتعليق

قائمة التعليقات

    بيانات مؤقتة