国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
鑰匙要點(diǎn)
結(jié)論
>
- > setSubject('hello'')
>如何使用Swift Mailer發(fā)送HTML電子郵件?
>在發(fā)生錯(cuò)誤時(shí),如何處理Swift Mailer中的錯(cuò)誤?您可以捕獲這些例外來(lái)處理錯(cuò)誤。這是一個(gè)示例:
>您可以通過(guò)創(chuàng)建多個(gè)消息實(shí)例并使用同一Mailer實(shí)例發(fā)送多個(gè)電子郵件,并通過(guò)Swift Mailer發(fā)送多個(gè)電子郵件。這是一個(gè)示例:
$ message2 =(new Swift_message())
$ this-> get('mailer') - > send($ message);
首頁(yè) 后端開(kāi)發(fā) php教程 PHP主|與Swift Mailer一起發(fā)送電子郵件

PHP主|與Swift Mailer一起發(fā)送電子郵件

Feb 25, 2025 pm 02:16 PM

PHP Master | Sending Email with Swift Mailer

PHP主|與Swift Mailer一起發(fā)送電子郵件

鑰匙要點(diǎn)

    Swift Mailer是一個(gè)功能強(qiáng)大的,基于組件的庫(kù),允許程序員使用面向?qū)ο蟮姆椒ㄝp松發(fā)送電子郵件,而SPL擴(kuò)展名則最小的PHP 5.2或更高要求,最小內(nèi)存限制為8MB。 Swift Mailer可以通過(guò)梨安裝,也可以通過(guò)使用FTP上傳文件來(lái)安裝。它由150多個(gè)類(lèi)別和接口組成,包括郵件,運(yùn)輸商,MIME實(shí)體,編碼器和插件。
  • > Swift Mailer提供了功能,可以與多個(gè)收件人,一個(gè)主題和平坦的主體創(chuàng)建電子郵件。它還允許附件,自定義SMTP配置以及跟蹤未收到電子郵件的收件人。
  • Swift Mailer還具有一個(gè)裝飾插件,可讓您將相同的電子郵件發(fā)送給具有較小差異的幾個(gè)收件人,例如電子郵件主體內(nèi)的收件人名稱(chēng)。這對(duì)于將新聞通訊發(fā)送給訂閱者等任務(wù)是有益的。
  • >
  • 以編程方式發(fā)送電子郵件是程序員必須經(jīng)常處理的常見(jiàn)任務(wù)。盡管您可以使用PHP的本機(jī)功能,但它們可能太低,尤其是當(dāng)您想將一個(gè)或多個(gè)文件附加到消息時(shí)。如果您不想使用本機(jī)函數(shù),或者您想使用面向?qū)ο蟮姆椒òl(fā)送郵件,那么這就是您的文章。我將向您介紹Swift Mailer,這是一個(gè)功能強(qiáng)大的基于組件的庫(kù),可以讓您輕松發(fā)送電子郵件。 Swift Mailer始于2005年,是一個(gè)提供多個(gè)類(lèi)的庫(kù),可讓您從PHP腳本或Web應(yīng)用程序中發(fā)送電子郵件。 Swift Mailer有一些要求,但是它們很小。圖書(shū)館需要PHP 5.2或更高,具有SPL擴(kuò)展名,最小內(nèi)存限制為8MB。 引用正式文檔,安裝Swift Mailer是微不足道的。通常,這只是將提取的源文件上傳到您的Web服務(wù)器的一種情況。安裝庫(kù)的最簡(jiǎn)單方法是通過(guò)梨或使用FTP上傳文件。 從梨通道安裝只是兩個(gè)類(lèi)型命令的問(wèn)題:
  • 如果您使用共享托管,并且無(wú)法訪問(wèn)命令殼,那么第二種方法可能是最容易的方法。只需從官方網(wǎng)站下載圖書(shū)館并上傳LIB文件夾即可。
  • Swift Mailer classs
  • Swift Mailer由150多個(gè)類(lèi)別和界面組成,將其分成幾個(gè)組件。他們每個(gè)人都有一個(gè)特定的目的。
Mailer:由Swift_mailer類(lèi)實(shí)現(xiàn)的Mailer是庫(kù)中的中央類(lèi),也是通過(guò)方法發(fā)送()實(shí)際發(fā)送電子郵件的中央類(lèi)。它的構(gòu)造函數(shù)接受了實(shí)現(xiàn)接口swift_transport的類(lèi)的實(shí)例,該類(lèi)別允許您使用自定義SMTP發(fā)送電子郵件。
pear channel-discover pear.swiftmailer.org
pear install swift/swift
  • >運(yùn)輸商:他們實(shí)現(xiàn)接口Swift_transport,其范圍是與服務(wù)進(jìn)行通信以傳遞電子郵件。主要類(lèi)是Swift_smtptransport,它使用SMTP協(xié)議,Swift_SendMailTransport,它與本地sendmail可執(zhí)行文件進(jìn)行通信,而Swift_mailtransport則依賴于php natival Mail()函數(shù)。
  • > MIME實(shí)體:這是庫(kù)中的關(guān)鍵組件。您將用來(lái)指定接收器,主題,身體等的類(lèi),稱(chēng)為Swift_message,由幾個(gè)分組在一起的實(shí)體組成。實(shí)體的兩個(gè)示例是附件和電子郵件標(biāo)頭。
  • >編碼器:此組件不是您要處理的,因?yàn)樗谀缓笮袆?dòng)。編碼器有兩種類(lèi)型:base64和引用打印機(jī)。他們的目標(biāo)是將內(nèi)容轉(zhuǎn)換為符合RFC規(guī)范的格式。
  • >插件:這些用于擴(kuò)展Swift Mailer的基本功能。某些插件是防液,它允許您限制單個(gè)SMTP連接期間發(fā)送的消息數(shù),記錄器,用于登錄發(fā)送過(guò)程中發(fā)生的事情,而Decorator則是一個(gè)驚人的插件,它允許您使用電子郵件模板并在電子郵件文本中更改幾個(gè)差異。
  • 一個(gè)基本示例 到目前為止和我在一起嗎?好的?,F(xiàn)在,您已經(jīng)了解了如何在圖書(shū)館中組織組件,讓我們弄臟雙手,看看如何利用Swift Mailer的力量和靈活性。在第一個(gè)非常簡(jiǎn)單的示例中,我將向您展示一個(gè)電子郵件的創(chuàng)建,該電子郵件具有兩個(gè)收件人,一個(gè)主題和一個(gè)普通文本的主體。創(chuàng)建后,它將發(fā)送給收件人。 以下代碼使用上一節(jié)中提到的三個(gè)類(lèi):swift_mailtransport,swift_mailer和swift_message。此外,請(qǐng)注意代碼的第一行,即需要使用庫(kù)需要的Swift Mailer的自動(dòng)加載器。

    如您所見(jiàn),Swift_mailtransport用于創(chuàng)建一個(gè)將使用本機(jī)PHP Mail()函數(shù)的傳輸層實(shí)例。然后我創(chuàng)建了一個(gè)swift_message 您可以將其視為電子郵件對(duì)象的實(shí)例。在以下幾行中,我使用Setto()方法,使用setSubject(),使用setBody()的電子郵件主體以及使用setFrom()方法來(lái)設(shè)置收件人。通過(guò)定義的層和創(chuàng)建的電子郵件,是時(shí)候?qū)嶋H發(fā)送電子郵件了,該電子郵件是使用Swift_mailer類(lèi)的send()方法完成的。

    一個(gè)帶有附件的示例
    pear channel-discover pear.swiftmailer.org
    pear install swift/swift
    毫無(wú)疑問(wèn),附件是當(dāng)今電子郵件系統(tǒng)的主要內(nèi)容。沒(méi)有他們,沒(méi)有人可以活著。這個(gè)稍微復(fù)雜的示例將向您展示如何發(fā)送一封電子郵件,不僅具有附件,而且還具有其他功能。

    >另外兩個(gè)接收器,一個(gè)在CC中,第二個(gè)接收器使用setcc()和setBcc()。
  • >使用附加方法從磁盤(pán)檢索的一個(gè)附件。
  • >使用swift_smtptransport類(lèi)的自定義SMTP配置。
  • 知道哪些收件人尚未使用send()方法的第二個(gè)參數(shù)收到電子郵件。
  • >
  • 我使用了不同的傳輸層,一個(gè)使用Swift_smtptransport類(lèi)設(shè)置的SMTP
    pear channel-discover pear.swiftmailer.org
    pear install swift/swift
    。它接受兩個(gè)參數(shù):SMTP服務(wù)器和連接端口。您可以使用該實(shí)例設(shè)置適當(dāng)?shù)挠脩裘兔艽a,以使用setUsername()和setPassword()方法訪問(wèn)服務(wù)器。然后,就像第一個(gè)示例一樣,我創(chuàng)建了一個(gè)swift_message對(duì)象,并設(shè)置收件人,主題等。但是,這次我還利用了SETCC()和SETBCC() 正如您可能猜到的那樣,方法可以使您設(shè)置碳復(fù)制和盲碳復(fù)制收件人。 此示例的關(guān)鍵方法是附加(),該方法使用static方法從硬盤(pán)中獲取的文件(),該靜態(tài)方法從()沿著要附加作為其參數(shù)附加的文件的路徑。請(qǐng)注意,這次我還使用Send()方法的第二個(gè)參數(shù)打印了檢索到的失敗收件人的數(shù)量。 使用模板

    第三個(gè)也是最后一個(gè)示例向您展示了如何使用Decorator插件,非常適合將新聞通訊發(fā)送給訂戶。它使您可以將相同的電子郵件發(fā)送給幾個(gè)具有較小差異的收件人,例如電子郵件主體內(nèi)的收件人名稱(chēng)。該插件將在模板內(nèi)(主體)內(nèi)部查看,并將用設(shè)定值替換占位符。 要使用插件,您首先需要使用registerplugin()方法進(jìn)行注冊(cè),然后構(gòu)建和使用替換值數(shù)組。在以下代碼中,我將放置兩個(gè)占位符,

    > username> transactions ,這些占位符將通過(guò)參考用戶電子郵件的值替換。 裝飾器插件構(gòu)造函數(shù)接受一個(gè)參數(shù):一個(gè)值陣列以替換占位符。此數(shù)組的每個(gè)值都使用用戶的電子郵件以及包含占位符補(bǔ)充對(duì)的子陣列。這正是$替換陣列的目的。在上面的示例中,作為占位符,我在兩個(gè)括號(hào)內(nèi)使用了一個(gè)字符串(即{fullname})但是您可以使用任何想要的東西。這次,我沒(méi)有像以前一樣將所有收件人設(shè)置為同一語(yǔ)句中的所有收件人,我使用了循環(huán)。之所以這樣做,是因?yàn)椴寮r截了發(fā)送過(guò)程,讀取收件人電子郵件,并使用替換陣列的值替換了占位符。

    結(jié)論

    在本文中,我展示了如何使用Swift Mailer輕松發(fā)送電子郵件。如您所見(jiàn),這是一個(gè)非常強(qiáng)大的庫(kù),可以使用OOP方法來(lái)做很多事情。當(dāng)然,Swift Mailer還有很多其他方法和課程,我在本文中沒(méi)有介紹過(guò)。您可以在官方文檔中研究它們,但這應(yīng)該足以讓您開(kāi)始毫無(wú)麻煩地發(fā)送電子郵件。 通過(guò)fotolia 圖像 經(jīng)常詢問(wèn)有關(guān)Swift Mailer的問(wèn)題

    >如何使用Composer安裝Swift Mailer?

    > Swift Mailer可以使用Composer輕松安裝Composer,該工具是PHP中依賴關(guān)系管理的工具。要安裝Swift Mailer,您需要在系統(tǒng)上安裝作曲家。安裝了作曲家后,您可以通過(guò)在項(xiàng)目目錄中運(yùn)行以下命令來(lái)安裝Swift Mailer:作曲家需要“ Swiftmailer/SwiftMailer:^6.0”。此命令告訴作曲家將Swift Mailer軟件包及其依賴項(xiàng)下載到您的項(xiàng)目中。

    >

    >我如何使用Swift Mailer發(fā)送電子郵件?

    >

    >與Swift Mailer一起發(fā)送電子郵件涉及創(chuàng)建消息,配置郵件器并發(fā)送消息。這是如何使用Swift Mailer發(fā)送電子郵件的基本示例:



    require_once'/path/to/vendor/autoload.php'php';
    > - > setSubject('Hello')
    - > setFrom(['john@doe.com'=>'john doe'])
    > - > setto(['receiver@domain.org','elethn@domain.org'=>'a name'])
    - > setBody('這是消息本身');

    > $ transport =(new Swift_smtptransport('smtp.example.org',25))
    > - > setUsername('yourSername'')
    > - > setPassword('your password');

    $ mailer = new swift_mailer($ transport);

    $ $ result = $ mailer-> send($ message) >如何使用Swift Mailer將附件添加到電子郵件中?您可以從路徑,字符串或現(xiàn)有的Swift附件實(shí)例附加文件。這是如何從路徑附加文件的示例:

    $ message =(new swift_message())

    - > setSubject('hello'')

    - > setfrom(['john john @doe.com'=>'john doe']))

    - > setto(['receiver@domain.org'])
    - > setBody('這是消息本身')
    - >附加(swift_attachment :: frompath('path/to/to/to/image.jpg'));

    >如何使用Swift Mailer發(fā)送HTML電子郵件?

    Swift Mailer允許您通過(guò)將郵件的主體設(shè)置為HTML字符串并將內(nèi)容類(lèi)型設(shè)置為“ text/html”來(lái)發(fā)送HTML電子郵件。這是一個(gè)示例:

    $ message =(new Swift_message())
    - > setSubject('Hello')
    - > setFrom(['john@doe.com'=>'john doe']))
    - > setto(['recevive@domain.org'])
    - > setBody('

    這是 html 消息本身

    ','text/html');

    >在發(fā)生錯(cuò)誤時(shí),如何處理Swift Mailer中的錯(cuò)誤?您可以捕獲這些例外來(lái)處理錯(cuò)誤。這是一個(gè)示例:

    嘗試{
    $ result = $ mailer-> send($ messagy)發(fā)送電子郵件:'。美元設(shè)置。這是一個(gè)示例:

    $ transport =(new Swift_smtptransport('smtp.gmail.com',465,'ssl'))
    > - > setUsername('gmail username'your gmail username'') > setPassword('您的gmail密碼');

    >如何使用Swift Mailer發(fā)送多個(gè)電子郵件?

    >

    >您可以通過(guò)創(chuàng)建多個(gè)消息實(shí)例并使用同一Mailer實(shí)例發(fā)送多個(gè)電子郵件,并通過(guò)Swift Mailer發(fā)送多個(gè)電子郵件。這是一個(gè)示例:

    $ message1 =(new swift_message())
    - > setSubject('Hello')
    - > setFrom(['john@doe.com'=>'john john doe']))
    - > setto(['receviver1@domain.org'])
    > - > setBody('這是消息本身');

    $ message2 =(new Swift_message())

    - > setSubject('Hello')

    - > setFrom(['john@doe.com'=>'John Doe ']))
    - > setto(['receiver2@domain.org'])
    - > setBody('這是消息本身');

    $ result1 = $ mailer-> send($ message1);
    $ result2 = $ mailer-> send($ message2);
    >
    >我如何使用Swift使用SYMFONY?

    Swift Mailer與Symfony集成在一起,可以用作服務(wù)。您可以通過(guò)獲取郵件服務(wù)并使用它發(fā)送消息來(lái)與Swift Mailer一起發(fā)送電子郵件。這是一個(gè)示例:

    $ message =(new Swift_message())
    - > setSubject('Hello')
    - > setFrom(['john@doe.com'=>'john doe']))
    - > setto(['recevive@domain.org'])
    - > setBody('這是消息本身');

    $ this-> get('mailer') - > send($ message);

    >

    >如何使用Swift Mailer?
    >您可以通過(guò)在消息實(shí)例上調(diào)用SetPriority方法來(lái)設(shè)置電子郵件的優(yōu)先級(jí)。優(yōu)先級(jí)是1(最高)和5(最低)之間的整數(shù)。這是一個(gè)示例:

    $ message =(new Swift_message())
    - > setSubject('Hello')
    - > setFrom(['john@doe.com'=>'john doe']))
    - > setto(['recevive@domain.org'])
    > setBody('這是消息本身')
    > - > setPriority(1);

    >如何使用Swift Mailer異步發(fā)送電子郵件?但是,您可以使用消息隊(duì)列實(shí)現(xiàn)這一目標(biāo)。您可以加入消息,然后將它們發(fā)送到單獨(dú)的過(guò)程中。這允許您的應(yīng)用程序繼續(xù)處理其他任務(wù)而無(wú)需等待發(fā)送電子郵件。>

    以上是PHP主|與Swift Mailer一起發(fā)送電子郵件的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

    本站聲明
    本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

    熱AI工具

    Undress AI Tool

    Undress AI Tool

    免費(fèi)脫衣服圖片

    Undresser.AI Undress

    Undresser.AI Undress

    人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用于從照片中去除衣服的在線人工智能工具。

    Clothoff.io

    Clothoff.io

    AI脫衣機(jī)

    Video Face Swap

    Video Face Swap

    使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費(fèi)的代碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級(jí)代碼編輯軟件(SublimeText3)

    熱門(mén)話題

    如何在PHP中實(shí)施身份驗(yàn)證和授權(quán)? 如何在PHP中實(shí)施身份驗(yàn)證和授權(quán)? Jun 20, 2025 am 01:03 AM

    tosecurelyhandleauthenticationandationallizationInphp,lofterTheSesteps:1.AlwaysHashPasswordSwithPassword_hash()andverifyusingspasspassword_verify(),usepreparedStatatementStopreventsqlineptions,andStoreSeruserDatain usseruserDatain $ _sessiveferterlogin.2.implementrole-2.imaccessccsccccccccccccccccccccccccc.

    如何在PHP中安全地處理文件上傳? 如何在PHP中安全地處理文件上傳? Jun 19, 2025 am 01:05 AM

    要安全處理PHP中的文件上傳,核心在于驗(yàn)證文件類(lèi)型、重命名文件并限制權(quán)限。1.使用finfo_file()檢查真實(shí)MIME類(lèi)型,僅允許特定類(lèi)型如image/jpeg;2.用uniqid()生成隨機(jī)文件名,存儲(chǔ)至非Web根目錄;3.通過(guò)php.ini和HTML表單限制文件大小,設(shè)置目錄權(quán)限為0755;4.使用ClamAV掃描惡意軟件,增強(qiáng)安全性。這些步驟有效防止安全漏洞,確保文件上傳過(guò)程安全可靠。

    PHP中==(松散比較)和===(嚴(yán)格的比較)之間有什么區(qū)別? PHP中==(松散比較)和===(嚴(yán)格的比較)之間有什么區(qū)別? Jun 19, 2025 am 01:07 AM

    在PHP中,==與===的主要區(qū)別在于類(lèi)型檢查的嚴(yán)格程度。==在比較前會(huì)進(jìn)行類(lèi)型轉(zhuǎn)換,例如5=="5"返回true,而===要求值和類(lèi)型都相同才會(huì)返回true,例如5==="5"返回false。使用場(chǎng)景上,===更安全應(yīng)優(yōu)先使用,==僅在需要類(lèi)型轉(zhuǎn)換時(shí)使用。

    如何與PHP的NOSQL數(shù)據(jù)庫(kù)(例如MongoDB,Redis)進(jìn)行交互? 如何與PHP的NOSQL數(shù)據(jù)庫(kù)(例如MongoDB,Redis)進(jìn)行交互? Jun 19, 2025 am 01:07 AM

    是的,PHP可以通過(guò)特定擴(kuò)展或庫(kù)與MongoDB和Redis等NoSQL數(shù)據(jù)庫(kù)交互。首先,使用MongoDBPHP驅(qū)動(dòng)(通過(guò)PECL或Composer安裝)創(chuàng)建客戶端實(shí)例并操作數(shù)據(jù)庫(kù)及集合,支持插入、查詢、聚合等操作;其次,使用Predis庫(kù)或phpredis擴(kuò)展連接Redis,執(zhí)行鍵值設(shè)置與獲取,推薦phpredis用于高性能場(chǎng)景,Predis則便于快速部署;兩者均適用于生產(chǎn)環(huán)境且文檔完善。

    如何在PHP( - , *, /,%)中執(zhí)行算術(shù)操作? 如何在PHP( - , *, /,%)中執(zhí)行算術(shù)操作? Jun 19, 2025 pm 05:13 PM

    PHP中使用基本數(shù)學(xué)運(yùn)算的方法如下:1.加法用 號(hào),支持整數(shù)和浮點(diǎn)數(shù),也可用于變量,字符串?dāng)?shù)字會(huì)自動(dòng)轉(zhuǎn)換但不推薦依賴;2.減法用-號(hào),變量同理,類(lèi)型轉(zhuǎn)換同樣適用;3.乘法用*號(hào),適用于數(shù)字及類(lèi)似字符串;4.除法用/號(hào),需避免除以零,并注意結(jié)果可能是浮點(diǎn)數(shù);5.取模用%號(hào),可用于判斷奇偶數(shù),處理負(fù)數(shù)時(shí)余數(shù)符號(hào)與被除數(shù)一致。正確使用這些運(yùn)算符的關(guān)鍵在于確保數(shù)據(jù)類(lèi)型清晰并處理好邊界情況。

    我如何了解最新的PHP開(kāi)發(fā)和最佳實(shí)踐? 我如何了解最新的PHP開(kāi)發(fā)和最佳實(shí)踐? Jun 23, 2025 am 12:56 AM

    TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource

    什么是PHP,為什么它用于Web開(kāi)發(fā)? 什么是PHP,為什么它用于Web開(kāi)發(fā)? Jun 23, 2025 am 12:55 AM

    PHPbecamepopularforwebdevelopmentduetoitseaseoflearning,seamlessintegrationwithHTML,widespreadhostingsupport,andalargeecosystemincludingframeworkslikeLaravelandCMSplatformslikeWordPress.Itexcelsinhandlingformsubmissions,managingusersessions,interacti

    如何設(shè)置PHP時(shí)區(qū)? 如何設(shè)置PHP時(shí)區(qū)? Jun 25, 2025 am 01:00 AM

    tosetTherightTimeZoneInphp,restate_default_timezone_set()functionAtthestArtofyourscriptWithavalIdidentIdentifiersuchas'america/new_york'.1.usedate_default_default_timezone_set_set()

    See all articles