您的位置:首页 > 编程语言 > PHP开发

调用smtp.qq.com服务器发送邮件,既然是这样发送失败。

2013-10-31 23:17 393 查看
今天纠结了一天呀,就是不明白smtp信息设置都正确了,而且本地win7就可以发送成功,win2003 服务器就是发送失败。
经过无数次的推理呀,验证呀,原来,
当用win2003做服务器时,收信人跟smtp.qq.com的帐号不能是同一个帐号,欲哭无泪呀。
其实关键技术还是挻简单的。
fsockopen 连接主机
stream_set_blocking 没搞懂
stream_set_blocking ($resource, $flag); $flag 取值为0或1
0是非阻塞,1是阻塞
阻塞的意义是什么呢?
某个函数读取一个网络流,当没有未读取字节的时候,程序该怎么办?
是一直等待,直到下一个未读取的字节的出现,还是立即告诉调用者当前没有新内容?
前者是阻塞的,后者是非阻塞的。
阻塞的好处是,排除其它非正常因素,阻塞的是按顺序执行的同步的读取。
而非阻塞,因为不必等待内容,所以能异步的执行,现在读到读不到都没关系,执行读取操作后立刻就继续往下做别的事情。
fputs 向连接的主机输入内容
fwrite() 的别名,把 string 的内容写入文件指针 file 处。 如果指定了 length,当写入了 length 个字节或者写完了 string 以后,写入就会停止,视乎先碰到哪种情况
fgets 从连接的主机得到内容
从 file 指向的文件中读取一行并返回长度最多为 length - 1 字节的字符串。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length - 1 字节后停止(要看先碰到那一种情况)。如果没有指定 length,则默认为 1K,或者说 1024 字节。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: