在PHP中使用SMTP发送邮件
今天一个朋友问我如何在PHP中发送邮件,遂我让他去百度谷歌一搜一大把。良久之后我问他问题解决与否,他很失落地表示网上的教程都是一个模板,按照他们的来会有一些问题,所以我整理了一下,准备重新把这个方法总结一下,以便留作将来参考。
?
?
1.什么是SMTP
SMTP的全称是Simple?Mail?Transfer?Protocol,即简单邮件传输协议,简单来理解,这个玩意就是拿来发送邮件的,至于具体怎么去实现的,完全不需要深究,因为我只需要它的这个功能而已。
?
?
2.使用相应的软件来实现SMTP
我选择了hMailServer,个人感觉这个软件还不错,具体下载地址可以到这里寻
找最新版本
http://www.hmailserver.com/index.php?page=download
?
?
3.配置hMailServer
软件下好了,至于安装那都是千篇一律了,安装好之后进行登录,重点讲配置这一块。
?
?
?
首先,看看Status中的服务是否启动了,启动了之后进行下一步
?
?
?
接着找到Domain,选择右边框体的Add
?
?
?
?
接着,选中General选项卡,在Domain中写入你想要的域名,比如我使用benzlee.com。这里有个误区,很多人问,在这里不应该填写163.com或者sina.com或者tom.com这些邮箱吗?就在这一点中,很多教程都对大家产生了误导――我现在是用自己的电脑作为服务器发送邮件,为什么还要写上他们的域名?我当然可以自定义自己喜欢的域名,跟什么163.com什么sina.com完全没有任何关系。
?
?
?
?
然后,选中选项卡Limits,按照下图所示进行数据设置,这里主要是对发送邮件大小的一些限制,可以根据自己的需要调节
?
?
?
?
接下来,该要创建自己的邮件帐户了,也就是说,你使用该帐户形式发送邮件。选择benzlee.com下的Accounts,点击Add,添加自己的帐户信息
?
?
?
?
在General选项卡的Address写入自己想要的帐户名,比如我设定为benzlee,输入自己的密码,我默认为空(这个密码是随意定的,除非你要认证该帐户),设定Maximum?size?为1000,这样,帐户就创建好了
?
?
?
?
然后,选择Setting->Protocols,将IMAP前面的勾去掉
?
?
?
接着,选择SMTP,切换到Delivery?of?e-mail选项卡,根据图中进行设置
?
?
?
然后,选择Advanced->Auto-ban,把Enabled前面的勾去掉
?
?
?
?
然后切换到IP?Ranges的My?Computer,进行如下设置
?
?
?
?
最后切换到Internet下,进行如下设置
?
?
?
?
搞定,hMailServer配置完毕。进入下一步
?
4.修改php.ini的内容,修改内容如下:
?1)修改SMTP?=?localhost
?2)修改sendmail_from?=?benzlee@benzlee.com,这里特别注意要去掉前面的分号,否则该句子算是被注释。这个句子是指该e-mail是由谁发送出去的,benzlee@benzlee.com就是刚才自己配置的邮件帐户。
?3)修改完成之后千万记得重启下Apache,否则就没有效果了。
?
5.自己写一个mail.php程序,可以使用如下代码:
?
$content?=?"This?is?a?mail?from?benzlee";???????//此处为邮件内容
$content?=?wordwrap($content,70);?????//?如果一行大于?70?个字符,使用?wordwrap()
mail("example@example.com","This?Is?My?SMTP",$content);????//调用PHP自带的mail函数,第一个参数为发送对象,第二个为邮件标题,第三个为邮件内容。
?>
?
example@example.com就是你想发送邮件的信箱地址,可以改成自己常用的信箱进行验证。
?
6.最后调用这个写好的php文件就能发送邮件了,大功告成。
没有收到自己的邮件?别纠结,去垃圾邮件箱看看你就知道了。。
最后。转载请注明出处,道理你懂的。

在PHP中,trait適用於需要方法復用但不適合使用繼承的情況。 1)trait允許在類中復用方法,避免多重繼承複雜性。 2)使用trait時需注意方法衝突,可通過insteadof和as關鍵字解決。 3)應避免過度使用trait,保持其單一職責,以優化性能和提高代碼可維護性。

依賴注入容器(DIC)是一種管理和提供對象依賴關係的工具,用於PHP項目中。 DIC的主要好處包括:1.解耦,使組件獨立,代碼易維護和測試;2.靈活性,易替換或修改依賴關係;3.可測試性,方便注入mock對象進行單元測試。

SplFixedArray在PHP中是一種固定大小的數組,適用於需要高性能和低內存使用量的場景。 1)它在創建時需指定大小,避免動態調整帶來的開銷。 2)基於C語言數組,直接操作內存,訪問速度快。 3)適合大規模數據處理和內存敏感環境,但需謹慎使用,因其大小固定。

PHP通過$\_FILES變量處理文件上傳,確保安全性的方法包括:1.檢查上傳錯誤,2.驗證文件類型和大小,3.防止文件覆蓋,4.移動文件到永久存儲位置。

JavaScript中處理空值可以使用NullCoalescingOperator(??)和NullCoalescingAssignmentOperator(??=)。 1.??返回第一個非null或非undefined的操作數。 2.??=將變量賦值為右操作數的值,但前提是該變量為null或undefined。這些操作符簡化了代碼邏輯,提高了可讀性和性能。

CSP重要因為它能防範XSS攻擊和限制資源加載,提升網站安全性。 1.CSP是HTTP響應頭的一部分,通過嚴格策略限制惡意行為。 2.基本用法是只允許從同源加載資源。 3.高級用法可設置更細粒度的策略,如允許特定域名加載腳本和样式。 4.使用Content-Security-Policy-Report-Only頭部可調試和優化CSP策略。

HTTP請求方法包括GET、POST、PUT和DELETE,分別用於獲取、提交、更新和刪除資源。 1.GET方法用於獲取資源,適用於讀取操作。 2.POST方法用於提交數據,常用於創建新資源。 3.PUT方法用於更新資源,適用於完整更新。 4.DELETE方法用於刪除資源,適用於刪除操作。

HTTPS是一種在HTTP基礎上增加安全層的協議,主要通過加密數據保護用戶隱私和數據安全。其工作原理包括TLS握手、證書驗證和加密通信。實現HTTPS時需注意證書管理、性能影響和混合內容問題。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

記事本++7.3.1
好用且免費的程式碼編輯器

Dreamweaver CS6
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

SublimeText3漢化版
中文版,非常好用