虎泰克博客

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


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

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

虎lxmlx泰xg克bz新s闻qr网_fftw版权所有,请勿未授权转载!!!

QQ图片20160725134751.png

虎pwzel泰s克_qdjc新gc闻qh网whap版权所有,请勿未授权转载!!!

这是单文件上传的

虎o泰rwimg克f新eay闻rbt网ag版权所有,请勿未授权转载!!!

QQ截图20160725134915.png

虎f泰i_fm克kt新rn闻pwvqh网yf版权所有,请勿未授权转载!!!

这是多文件上传的

虎vfv泰ao克zpcm新yitri闻cdx网ohon版权所有,请勿未授权转载!!!

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

虎fi泰tsmy克e新q_x闻yvz网x版权所有,请勿未授权转载!!!

QQ截图20160725135348.png

虎fjt泰lvch克xuyo新yu闻yr网cgt版权所有,请勿未授权转载!!!

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

虎_w泰gkw克ejhur新m闻mqo网v版权所有,请勿未授权转载!!!

QQ截图20160725135420.png

虎onn泰a克yhb新mlhcp闻oyt网qnx版权所有,请勿未授权转载!!!


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

虎xuvf泰h克wbkpv新egsg闻ep网aw版权所有,请勿未授权转载!!!

------WebKitFormBoundaryFsA1AIs8VyxmWEZd

虎kt_泰npt克z_z新vkgl闻xwn网q版权所有,请勿未授权转载!!!

不管boundary本身有没有这个"--",这个"--"都是不能省略的。

虎aprhh泰fmkdk克jln新z闻_n_网jjsv版权所有,请勿未授权转载!!!

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

虎ftcw泰vc克zgrzz新knbhn闻yegdp网j版权所有,请勿未授权转载!!!

QQ图片20160725135808.png

虎cxq泰b克e新wucua闻dz_b网gaa版权所有,请勿未授权转载!!!


虎ezxhg泰ket克fd新vidw闻m网dwm版权所有,请勿未授权转载!!!

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

SendCloud.class.zip



성명: 본 사이트 에 옮 겨 실 린 문서 / 그림 등 원 고 는 모두 더 많은 정 보 를 전달 하고 토론 하 는 목적 에서 본 사이트 와 주최, 담당 부서 가 자신의 의견 을 찬성 하거나 그 내용 의 진실성 을 증명 하 는 것 을 의미 하지 않 는 다. 글 의 내용 은 참고 로 제공 하고 원작 자의 권 리 를 침해 하면 사이트 관리자 에 게 연락 하 십시오.

로그인 으로 논평 을 발표하다

평론 목록

    일시 데이터 없음