Portfolio Details Bootstrap Template Home Services Portfolio Team Pricing Drop Drop Deep Drop Deep Drop Deep drop Deep drop Deep Drop Deep drop drop drop drop contact start Portfolio Details Home Portfolio Details Project information category web design Client Company Project date March Project example portfolio detail omni esse cum Copyright Rights reserve Home Privacy Policy term Use Bootstrap Template Index Home Services Portfolio Team Pricing Drop Drop Deep Drop Deep Drop Deep drop Deep drop Deep Drop Deep drop drop drop drop contact start grow business team talented designer make Bootstrap start aute aute esse non sunt culpa qui anim est learn Happy Clients project dere tan Years experience non vel Awards dolor alias quo pad der Services Sed aute esse Dolores non sunt culpa qui read Sed unde natus error read sit read Pale read Features Sed Neve Pack Moton Ideal Park Flavor Testimonials Saul Goodman Founder cure donec Sara Designer Export esse quem quid quorum fore noster anim culpa Store Owner quem export quorum quem quem noster aute fore Matt Brandon Freelancer quae culpa multo export anim fore quem John Entrepreneur Quis quorum quem fore sunt noster culpa culpa esse veniam culpa fore nisi quid Portfolio App Card Web App App web web App App Card card web web App App Card Card Card card web web Team Walter White Chief Executive Officer Sarah Product Manager William Anderson CTO Amanda Accountant Pricing alias free month dere dola Buy Business month dere dola Buy Developer month dere dola Buy frequently ask Questions sit Provident quam error Contact Adam Street New York load message send thank send message Copyright Rights reserve Home Privacy Policy term Use Inner Page Bootstrap Template Home Services Portfolio Team Pricing Drop Drop Deep Drop Deep Drop Deep drop Deep drop Deep Drop Deep drop drop drop drop contact start Inner Page Home Inner Page Example inner page template Copyright Rights reserve Home Privacy Policy term Use require Email Form library Email Form library available pro version template library upload vendor email form email info help Replace real receive email address vendor email form email include die unable load Email Form Library contact new contact ajax true code want use send email need enter correct credential array host example password pass port Email message echo bootstrap icon bootstrap icon alarm fill alarm align align center align end align middle align start align alt app indicator app archive fill archive leave right arrow bar arrow bar leave arrow bar right arrow bar arrow clockwise arrow counterclockwise arrow circle fill arrow circle arrow leave circle fill arrow leave circle arrow leave square fill arrow leave square arrow leave arrow right circle fill arrow right circle arrow right square fill arrow right square arrow right arrow short arrow square fill arrow square arrow arrow arrow leave circle fill arrow leave circle arrow leave right arrow leave short arrow leave square fill arrow leave square arrow leave arrow repeat arrow return leave arrow return right arrow right circle fill arrow right circle arrow right short arrow right square fill arrow right square arrow right arrow circle fill arrow circle arrow leave circle fill arrow leave circle arrow leave square fill arrow leave square arrow leave arrow right circle fill arrow right circle arrow right square fill arrow right square arrow right arrow short arrow square fill arrow square arrow arrow angle contract arrow angle expand arrow collapse arrow expand arrow arrow aspect ratio fill aspect ratio asterisk award fill award backspace fill backspace reverse fill backspace reverse backspace fill fill fill badge fill badge badge fill badge badge fill badge badge fill badge badge fill badge badge fill badge badge fill badge badge fill badge bag check fill bag check bag dash fill bag dash bag fill bag plus fill bag plus bag fill bag bag bank bar chart fill bar chart line fill bar chart line bar chart step bar chart basket fill basket fill fill battery charge battery battery half battery bell fill bell slash fill bell slash bell bicycle binocular fill binocular leave right book fill book half book bookmark check fill bookmark check bookmark dash fill bookmark dash bookmark fill bookmark heart fill bookmark heart bookmark plus fill bookmark plus bookmark star fill bookmark star bookmark fill bookmark bookmark bookmarks fill bookmark bookshelf bootstrap fill bootstrap reboot bootstrap border border border center border inner border leave border middle border outer border right border style border border width border bounding box circle bounding box box arrow leave box arrow right box arrow box arrow leave box arrow right box arrow box arrow leave box arrow right box arrow leave box arrow right box arrow box arrow leave box arrow right box arrow leave box arrow right box arrow box seam box brace brick briefcase fill briefcase brightness alt high fill brightness alt high brightness alt low fill brightness alt low brightness high fill brightness high brightness low fill brightness low broadcast pin broadcast brush fill brush bucket fill bucket bug fill bug build bullseye calculator fill calculator calendar check fill calendar check calendar date fill calendar date calendar day fill calendar day calendar event fill calendar event calendar fill calendar minus fill calendar minus calendar month fill calendar month calendar plus fill calendar plus calendar range fill calendar range calendar week fill calendar week calendar fill calendar calendar check fill check date fill date day fill day event fill event fill minus fill minus month fill month plus fill plus range fill range week fill week fill event fill event fill range fill range week fill week event range week camera fill camera reel fill camera reel camera video fill camera video fill camera video camera video camera fill card checklist card head card image card list card text caret fill caret square fill caret square caret caret leave fill caret leave square fill caret leave square caret leave caret right fill caret right square fill caret right square caret right caret fill caret square fill caret square caret cart check fill cart check cart dash fill cart dash cart fill cart plus fill cart plus cart fill cart cart cash coin cash stack cash cast chat dot fill chat dot chat fill chat leave dot fill chat leave dot chat leave fill chat leave quote fill chat leave quote chat leave text fill chat leave text chat leave chat quote fill chat quote chat right dot fill chat right dot chat right fill chat right quote fill chat right quote chat right text fill chat right text chat right chat square dot fill chat square dot chat square fill chat square quote fill chat square quote chat square text fill chat square text chat square chat text fill chat text chat check check circle fill check circle check check square fill check square check circle square chevron bar contract chevron bar chevron bar expand chevron bar leave chevron bar right chevron bar chevron compact chevron compact leave chevron compact right chevron compact chevron contract chevron double chevron double leave chevron double right chevron double chevron chevron expand chevron leave chevron right chevron circle fill circle half circle square circle clipboard check clipboard data clipboard minus clipboard plus clipboard clipboard clock fill clock history clock cloud arrow fill cloud arrow cloud arrow fill cloud arrow cloud check fill cloud check cloud download fill cloud download cloud drizzle fill cloud drizzle cloud fill cloud fog fill cloud fog cloud fill cloud cloud hail fill cloud hail cloud cloud haze fill cloud haze cloud fill cloud lightning fill cloud lightning rain fill cloud lightning rain cloud lightning cloud minus fill cloud minus cloud moon fill cloud moon cloud plus fill cloud plus cloud rain fill cloud rain heavy fill cloud rain heavy cloud rain cloud slash fill cloud slash cloud sleet fill cloud sleet cloud snow fill cloud snow cloud sun fill cloud sun cloud upload fill cloud upload cloud clouds fill cloud cloudy fill cloudy code slash code square code coin collection fill collection play fill collection play collection column gap column command compass fill compass cone stripe cone controller cpu fill cpu credit fill credit credit fill credit credit card fill credit card crop cup fill cup straw cup currency currency dollar currency euro currency exchange currency pound currency yen cursor fill cursor text cursor dash circle dot dash circle fill dash circle dash dash square dot dash square fill dash square dash fill fill diamond fill diamond half diamond fill fill fill fill fill fill disc fill disc discord display fill display distribute horizontal distribute vertical door close fill door close door open fill door open dot download droplet fill droplet half droplet easel fill easel egg fill egg fry egg eject fill eject angry fill angry dizzy fill dizzy expressionless fill expressionless frown fill frown heart eye fill heart eye laugh fill laugh neutral fill neutral smile fill smile upside fill smile upside smile sunglass fill sunglass wink fill wink envelope fill envelope open fill envelope open envelope eraser fill eraser exclamation circle fill exclamation circle exclamation diamond fill exclamation diamond exclamation exclamation octagon fill exclamation octagon exclamation square fill exclamation square exclamation triangle fill exclamation triangle exclamation exclude eye fill eye slash fill eye slash eye eyedropper eyeglass file arrow fill file arrow file arrow fill file arrow file bar graph fill file bar graph file binary fill file binary file break fill file break file check fill file check file code fill file code file diff fill file diff file earmark arrow fill file earmark arrow file earmark arrow fill file earmark arrow file earmark bar graph fill file earmark bar graph file earmark binary fill file earmark binary file earmark break fill file earmark break file earmark check fill file earmark check file earmark code fill file earmark code file earmark diff fill file earmark diff file earmark easel fill file earmark easel file earmark excel fill file earmark excel file earmark fill file earmark font fill file earmark font file earmark image fill file earmark image file earmark lock fill file earmark lock file earmark fill file earmark file earmark medical fill file earmark medical file earmark minus fill file earmark minus file earmark music fill file earmark music file earmark fill file earmark file earmark person fill file earmark person file earmark play fill file earmark play file earmark plus fill file earmark plus file earmark post fill file earmark post file earmark ppt fill file earmark ppt file earmark fill file earmark file earmark rule fill file earmark rule file earmark slide fill file earmark slide file earmark spreadsheet fill file earmark spreadsheet file earmark text fill file earmark text file earmark word fill file earmark word file earmark fill file earmark file earmark zip fill file earmark zip file earmark file easel fill file easel file excel fill file excel file fill file font fill file font file image fill file image file lock fill file lock file fill file file medical fill file medical file minus fill file minus file music fill file music file fill file file person fill file person file play fill file play file plus fill file plus file post fill file post file ppt fill file ppt file fill file file rule fill file rule file slide fill file slide file spreadsheet fill file spreadsheet file text fill file text file word fill file word file fill file file zip fill file zip file file alt file film filter circle fill filter circle filter leave filter right filter square fill filter square filter flag fill flag folder check folder fill folder minus folder plus folder fill folder folder folder open font forward fill forward exit funnel fill funnel gear fill gear wide connect gear wide gear gem gender ambiguous gender female gender male gender trans geo alt fill geo alt geo fill geo gift fill gift globe graph graph fill gap fill gap gap fill gap grid fill grid grip horizontal grip vertical hammer hand index fill hand index thumb fill hand index thumb hand index hand thumb fill hand thumb hand thumb fill hand thumb handbag fill handbag hash fill network fill network rack fill rack stack fill stack headphone headset headset heart fill heart half heart heptagon fill heptagon half heptagon hexagon fill hexagon half hexagon hourglass hourglass split hourglass hourglass house door fill house door house fill house hurricane image alt image fill image image fill fill info circle fill info circle info info square fill info square info input cursor text input cursor intersect journal album journal arrow journal arrow journal bookmark fill journal bookmark journal check journal code journal medical journal minus journal plus journal journal text journal journal journal joystick justify leave justify right justify fill key fill key keyboard fill keyboard ladder lamp fill lamp laptop fill laptop layer backward layer forward layer fill layer half layer layout sidebar inset reverse layout sidebar inset layout sidebar reverse layout sidebar layout split layout text sidebar reverse layout text sidebar layout text window reverse layout text window layout column layout life preserver fill fill lightning charge fill lightning charge lightning fill lightning link list check list nest list list star list task list list lock fill lock mailbox map fill map markdown fill markdown mask mastodon megaphone fill megaphone menu app fill menu app menu button fill menu button wide fill menu button wide menu button menu menu messenger fill mute fill mute load moisture moon fill moon star fill moon star moon mouse fill mouse fill fill music note beam music note list music note music player fill music player newspaper node minus fill node minus node plus fill node plus nut fill nut octagon fill octagon half octagon option outlet paint bucket palette fill palette paperclip paragraph patch check fill patch check patch exclamation fill patch exclamation patch minus fill patch minus patch plus fill patch plus patch question fill patch question pause fill pause pause circle fill pause circle pause fill pause peace fill peace pen fill pen pencil fill pencil square pencil pentagon fill pentagon half pentagon people fill people percent person badge fill person badge person bounding box person check fill person check person circle person dash fill person dash person fill person line fill person plus fill person plus person square person fill person person phone fill phone landscape fill phone landscape phone vibrate fill phone vibrate phone pie chart fill pie chart piggy bank fill piggy bank pin angle fill pin angle pin fill pin map fill pin map pin pip fill pip play fill play play circle fill play circle play fill play plug fill plug plus circle dot plus circle fill plus circle plus plus square dot plus square fill plus square plus power printer fill printer puzzle fill puzzle question circle fill question circle question diamond fill question diamond question question octagon fill question octagon question square fill question square question rainbow receipt cutoff receipt record fill record record circle fill record circle record fill record fill recycle reply fill reply reply fill reply fill ruler safe fill safe fill save fill save fill scissor screwdriver card fill card search segment nav server share fill share shield check shield exclamation shield fill check shield fill exclamation shield fill minus shield fill plus shield fill shield fill shield lock fill shield lock shield minus shield plus shield shaded shield slash fill shield slash shield shield shift fill shift shop window shop shuffle fill signpost fill signpost split fill signpost split signpost sim fill sim skip backward fill skip backward skip backward circle fill skip backward circle skip backward fill skip backward skip end fill skip end skip end circle fill skip end circle skip end fill skip end skip forward fill skip forward skip forward circle fill skip forward circle skip forward fill skip forward skip start fill skip start skip start circle fill skip start circle skip start fill skip start slack slash circle fill slash circle slash slash square fill slash square slash slider snow sort alpha alt sort alpha sort alpha alt sort alpha sort alt sort sort numeric alt sort numeric sort numeric alt sort numeric sort alt sort speaker fill speaker speedometer square fill square half square stack star fill star half star star fill sticky fill sticky stop fill stop stop circle fill stop circle stop fill stop stoplight fill stoplight stopwatch fill stopwatch subtract suit club fill suit club suit diamond fill suit diamond suit heart fill suit heart suit spade fill suit spade sun fill sun sunrise fill sunrise sunset fill sunset symmetry horizontal symmetry vertical table tablet fill tablet landscape fill tablet landscape tablet tag fill tag tag fill tag telegram telephone fill telephone forward fill telephone forward telephone inbound fill telephone inbound telephone minus fill telephone minus telephone outbound fill telephone outbound telephone plus fill telephone plus telephone fill telephone telephone terminal fill terminal text center text indent leave text indent right text leave text paragraph text right resize thermometer half thermometer high thermometer low thermometer snow thermometer sun thermometer dot vertical dot toggle toggle toggle tool tornado translate trash fill trash fill tree fill tree triangle fill triangle half triangle trophy fill trophy tropical storm truck truck tsunami fill twitch twitter type bold type type type type italic type type underline type check grid check radio grid radio umbrella fill umbrella union unlock fill unlock scan upload vector pen view list view stack vinyl fill vinyl volume fill volume volume mute fill volume mute volume fill volume volume fill volume wallet fill wallet watch water wind window dock window sidebar window wrench circle fill circle diamond fill diamond octagon fill octagon square fill square zoom zoom Email Form version copyright version require version class public false public false public false public subject false public mailer false public false public message public text public public ajax false public option public public public honeypot public false public array Email receive email address invalid Email invalid subject short short short sorry request Ajax post file extension allow choose Max allow attachment size private error false private attachment public function construct public function label false message label return label label message message public function val val public function die implode die path public function send return response return response provide header content type application form method POST content secret response response false true return fail validate return subject message subject host password return initialize mail new try set timeout second check set true header Recipients content subject message option attachment attachment Email Form return catch Exception return Mailer Error email creation transport class Version project Synchro Jim Andy Prevost Brent original founder Jim Andy Prevost GNU Lesser General Public License program distribute hope useful WARRANTY imply warranty MERCHANTABILITY FITNESS PARTICULAR PURPOSE class const ascii const const const text plain const text calendar const text const alternative const mixed const relate const const const const binary const quote printable const const const request const publish const reply const add const CANCEL const refresh const counter const Email priority option null default high Normal low null header set public Priority character set message string public MIME content type message string public message encoding option binary quote printable string public Encoding hold recent mailer error message string public email address message string public message string public Root User envelope sender message usually turn Return Path header receiver address bounce send pass MAIL value string public sender subject message string public subject plain text message body string public body plain text message body body read mail client email capability mutt Eudora client read view normal body string public message body support simple alt message type generate event structure use class like string public value array method header text calendar string protect static complete compile MIME message body string protect complete compile MIME message header string protect extra header fold string protect Word wrap message body number char Set wrap useful value section compliance int public method use send mail option mail string public Mailer mail path program string public mail use fully compatible support option bool public true email address reading confirmation send know read receipt string public use message header default string attempt find order value string public message header unique generate set format define section ignore string public message Date Date header current date add string public host single multiple semicolon delimit specify different port host format port specify encryption type example host try order string public host default server port int public Port connection Default attempt find method describe string public kind encryption use connection option string public enable encryption automatically server support set aware require server certificate valid bool public true use authentication use Password property bool public false option array pass connect array public string public password string public Password auth type option CRAM LOGIN PLAIN attempt order specify string public instance class protect server timeout second default minute section int public Timeout comma separate list notification circumstance return sender use notification ignore SUCCESS notify mail arrive destination FAILURE arrive error occur delivery delay notify unusual delay delivery actual delivery outcome success failure decide section information NOTIFY public class debug output mode debug output level option output client message Client server message SERVER plus connection status Noisy low level datum output rarely need int public handle debug output option echo output plain text appropriate CLI Output escape line break convert appropriate browser output output error log configure default use echo run cli cli server alternatively provide callable expect param message string debug level level echo debug level level message str alternatively pass instance compatible logger debug level output new public echo connection open message set true close connection require explicit bool public false split multiple address multiple message send message support mail transport bool mailing list manager public false storage address enable array protect generate address send applicable send postfix info bool public false allow send message body bool public false selector string public Identity usually email address source email string public key encrypt string public sign domain string public Copy header field value diagnostic use bool public true extra signing header list list help array public private key file path string public private key string set take precedence string public Callback Action function function handle result send email action call send email send value callable parameter bool result result send action array email address recipient array email address array email address stre subject subject stre body email body string email address sender stre extra extra information possible use transaction string public Mailer header option string default whitespace null string use public use default validate email address callable inject build default use option public static instance sender class protect array name address array protect array name address array protect array name address array protect array reply name address array protect array kind address include array protect array name address queue validation send valid non duplicate entry move array address array protect array reply name address queue validation send valid non duplicate entry move array address array protect array attachment array protect attachment array custom header array protect recent message include angular bracket string protect message MIME type string protect array MIME boundary string array protect boundary array available language array protect language number error encounter int protect MIME certificate file path string protect MIME key file path string protect optional MIME extra certificate Chain file path string protect MIME password key key encrypt string protect throw exception error bool protect exception false unique message boundary string protect Version number string const VERSION error severity message continue processing int const error severity message likely continue processing int const error severity message plus stop critical error reach int const standard line break want change line break format change const fold White Space white space string line folding const standard line ending Carriage Return Line Feed string protect static maximum line length support mail background mail corrupt message header header long char int const maximum line length allow section int const low maximum line length allow section length include line break mean line char depend line break format valid int const Constructor bool exception throw external exception public function null null exception bool exception appropriate debug output format automatically cli false echo Destructor public function destruct open connection nicely mail aware fashion point claim pass param perfect fix string stre subject Subject stre body message Body stre header additional param bool private function subject body header param overload mail function avoid double encoding subject subject mail null param break mail path sender subject header null param result subject body header param param result subject body header param result true false return result output debug info user define method generate output debug output enable stre str protect function return logger return clash build function name echo str return switch case output log break case output bit well looking safe output echo str break case echo default line break str str echo trail space trim readability trail break set message type plain bool true mode public function true send message public function send message mail function public function mail send message public function false send message public function false bin inject add address string address email address send string exception bool true success false address invalid way public function return address add address string address email address send string exception bool true success false address invalid way public function return address add address string address email address send string exception bool true success false address invalid way public function return address add reply address string address email address reply string exception bool true success false address invalid way public function return address add address recipient array array validate address know modify call function addition address delay send address add return false throw exception stre kind string address email address send resp reply string exception bool true success false address invalid way protect function address address break trim pos false pos sign miss kind address throw new return false param kind address address know reply kind param return true param return true return false add standard address return param add address recipient array array address add return false throw exception stre kind string address email address send resp reply string exception bool true success false address invalid way protect function address reply recipient kind kind throw new return false kind address throw new return false reply kind address true return true address return true return false parse validate string contain style comma separate email address form display array address pair use function extension available note quote remove careful implementation stre address list string bool use extension parse list array public static function true address build parser available list list address error present encode personal address personal address simple parser list explode list address address separate false separate use thing address address address email explode address email email encode decode address surround quote space address email return address set property string address stre bool auto set Sender address default true exception bool public function auto true address break trim validate address send pos false pos address throw new return false address auto address return true return message header email technically value time header create message send message pathological case string public function return check string look like email address validation pattern support auto pick good pattern automatically use pattern require use old implementation use build use pattern give spec email type form input element use super fast dumb alternatively pass callable inject example return false set static callable allow build method use string address email address check pattern use bool public static function null null return address line break address valid false false return false switch case case complex permissive version base addition address allow permit dotless domain comment quote element test numeric unbracketed literal literal necessarily work send Michael feel free use redistribute code copyright notice return bool address case pattern spec validation email type form input element return bool address case default return false tell internationalized Domain Names support require intl extension bool true require function support present public static function return convert give email address ascii form know possible important Address pass encoding currently set function silently return unmodified address conversion necessary domain ascii form conversion impossible require function available fail reason domain contain character allow string address email address convert string encoded address ascii form public function require function sign pos false pos domain string valid domain properly encode domain domain IDE complaint line method signature change current standard appear old deprecate remove encode default know false return pos return address create message send use sending method specify Mailer exception bool false error property detail error public function send try return false return catch Exception throw return false prepare message send exception bool public function mail WIN mandate compliant line ending mail Windows backward compatibility legacy command line mailer buggy version add header incorrect line break mail WIN version affect bug result corrupted message fix switch send disable option switch upgrade version try error recipient reply address param param throw new Sender address Sender continue throw new return false message alternative send message specifically allow throw new subject consistently body header case body make change header alter transfer encoding add header retain capture complete message mail create extra header list fold mail undisclosed recipient subject enable return true catch Exception throw return false actually send message select mechanism exception bool public function try mailer send switch case case return case return case mail return default send return return catch Exception true throw return false send mail program stre header message header stre body message body exception bool protect function body header set envelope sender get turn return path header receiver space optional long history presence problem use doc doc doc problem pass character escape sender address use pass character escape require param fail address unusable missing return false path command sender header mail mail throw new header body result result body result true false result throw new mail mail throw new header body result result body result true false result throw new return true Fix disallow potentially unsafe shell character note inadequate purpose especially Windows bug report stre stre string validate bool protect static function proof string string return false length length character special meaning common shell include stop special meaning impact negligible permit non latin alphanumeric character base current locale false return false return true check file path permit type reject phar file function access local file path stre path relative absolute path file bool protect static function return path check file path safe accessible readable stre path relative absolute path file bool protect static function readable UNC path expect start check read permission readable readable return readable send mail mail function stre header message header stre body message body exception bool protect function body header implode param null set envelope sender get turn return path header receiver space optional long history presence problem use doc doc doc problem pass character escape sender address use param result false result body header param body result body header param body result throw new return true instance use operation override function load implementation set public function new return provide instance use operation public function return send mail return false bad MAIL RCPT DATA input use different class stre header message header stre body message body exception bool protect function body header throw new validate implode throw new callback send recipient error error false true callback send DATA command viable recipient body throw new callback body error message bad address bad throw new return true initiate connection server return false operation fail array option array option compatible exception bool public function null null option provide use set instance null option option connect return true host explode null host valid host entry continue optional prefix optional port number host string prefix temporarily override current setting specify default value host valid address try use continue prefix secure prefix false time secure true use prefix secure need extension secure secure constant disabled throw new host port port int host port option try hello hello enable encryption disabled extension server offer secure true throw new resend negotiation throw new return true catch Exception connect fail Auth close connection nicely connection attempt fail close connection hard catch exception report null throw return false close active session exist public function null set language error message return false load language file default language English stre ISO character language code French stre path language file directory trail separator slash bool public function compatibility rename language code set translatable string English authenticate Error authenticate Error connect host Error datum accept message body encode unknown encoding execute execute access file File error open file follow address fail instantiate instantiate mail function invalid address invalid invalid host mailer support provide recipient email address error follow recipient fail sign sign Error connect fail server error set reset variable extension miss absolute path work language true english translation file sure language file path readable false language specific string way miss translation key include return bool false language find array string current language array public function return create recipient header stre type array addr array recipient recipient element index array element contain address element contain like Joe User User string public function addr address addr address address return type implode address Format address use message header array addr element index array element contain address element contain like Joe User string public function provide return return phrase Word wrap message use mailer automatically perform wrap quote printable encode message original write philippe stre message message wrap int length line length wrap bool run quote printable mode string public function length false encoding need sure multibyte character wrap message trail line break message message line line message rebuild message line line word explode line true word word length length len len len len len len len word len message message word length break len length len len len len len len word string len word message word length message word false message return message find character boundary prior quote printable encode string original write Colin Brown string text int find character boundary prior length int public function false false start encoded character byte block encoded byte value char hex dec dec byte character encoded char find pos fit reduce start encode char true dec byte multi byte character split start character true dec byte multi byte character look encode character find true return apply word wrap message body wrap message body number char set property plain text body wrap tag break call automatically need public function return switch case alt case case case break default break assemble message header string assemble header public function result result header create automatically mail need omit mail result result undisclosed recipient result mail extract header send result mail extract header send mail result result set subject mail result allow custom message conform section result null result Priority result Mailer result Mailer result notification custom header header result result Version result return result message MIME type header string public function result true switch case inline result type result break case attach case case case result type result break case alt case result type result break default case plain case result type false break say assume specify section say MIME part use binary CTE result transfer Encoding remain alternative quote printable compatible result transfer Encoding return result return MIME message include complete header body valid post string public function return create unique use boundary string protect function len bytes bit bytes try bytes catch byte byte fail produce proper random string hash force length method byte true true care mess format want random string return byte true assemble message body return string failure exception string assembled message body public function body unique preset boundary body bit downgrade ISO Windows ascii compatible bit line long encoding shorten quote printable transfer encoding body bit downgrade ISO Windows ascii compatible bit line long encoding shorten quote printable transfer encoding alt body preamble message type multi message MIME format switch case inline body body body body body break case attach body body body body body break case body body body type body body body body body body body body body break case alt body body body body body body body method method false method break body method body body body break case body body body body body body type body body body body body body body body body break case body body body type body body body body body body body body method method false method break body method body body body body break case body body body type body body body body body body body type body body body body body body body body body body body break default case plain case apply simple text plain text body content type encoding property case change line length reason body break body throw new try throw new file sign body bug sign file sign sign file sign sign body message return contain header body need split part body body throw new catch Exception body throw return body return start message boundary stre boundary stre stre stre encode string protect function encoding result encode encode result boundary result type result say assume specify encode result transfer Encoding encoding result return result return end message boundary stre boundary string protect function return boundary set message type support preset message type arbitrary MIME structure protect function type type alt type inline type attach implode type plain refer message have single body element plain text plain Format header line stre value string public function value return value return formatted mail line stre value string public function return value add attachment path use user supply path file return false file find read explicitly support pass client need fetch resource pass local file string stre path Path attachment stre override attachment stre encode File encoding encoding stre type MIME type image determine automatically path specify stre disposition disposition use exception bool public function path encode type disposition attachment try throw new path MIME type specify try work file type type filename string filename throw new encoding path filename encoding type false disposition catch Exception throw return false return true return array attachment array public function return attach file string binary attachment message return string failure stre stre boundary exception string protect function boundary text body mime incl attachment attachment valid string attachment string path string path incl true continue incl encode type disposition cid inline disposition continue true mime boundary include filename property mime Content type type mime Content type type say assume specify encode mime transfer encoding encoding set content IDs inline attachment string cid disposition inline mime Content bypass Content Disposition header mime Content Disposition disposition mime Content Disposition disposition mime string attachment mime encoding mime encoding return mime mime boundary return implode mime encode file attachment request format return string failure stre path path file stre encode encoding use binary quote printable string protect function encode try throw new path false throw new path encoding return catch Exception throw return encode string request format return string failure stre str text encode stre encode encoding use binary quote printable exception string public function encode encode switch case encode break case case encode sure end line break encode break case encode str break case encode break default encoding throw new encoding break return encode encode header value include label optimally pick short Result include fold need definition phrase comment text position stre str header value encode stre position context string string public function position text switch case phrase str use know value encoded str encode str return encode return str match break case comment str match case text default str match break encoding add char overhead mail overhead overhead encoding produce short output prevent corruption content need encoding use encode encode content need encoding use encode encode encoding need value exceed max line length use encode prevent corruption encode need encode false switch encoding case custom function correctly encode wrap long string break line character encode encode encode encode encode break case encode position encode true encode encode encode break default return str return check string contain multi byte character string str multi byte text wrap encode bool public function return multibyte handle function return false string contain bit char stre text bool public function return bool text encode wrap long multibyte string mail header break line character adapt function string str multi byte text wrap encode stre string use linefeed end line string public function null start end encode null line length include start end length multi byte ratio ratio ratio ratio offset offset offset chunk offset chunk length encode chunk linefeed return encode string quote printable format accord section stre string text encode string public function return encode string encoding stre str text encode stre position text mean string public function position text string pattern encode str switch case phrase section pattern break section build pattern include delimiter case comment pattern intentional fall case text default section high ascii control character pattern pattern break match encode match string contain sure thing replace avoid double encode true false char encode encode space readable section return encode add string binary attachment non method attach ascii binary datum BLOB record database stre string String attachment datum string filename attachment stre encode File encoding encoding stre type file extension MIME type stre disposition disposition use exception bool true successfully add attachment public function string filename encode type disposition attachment try MIME type specify try work file type type throw new encoding attachment array string filename encoding type true disposition catch Exception throw return false return true add embed inline attachment file include image sound document type differ regular attachment intend display inline message attach download message image refer cid value use user supply path file stre path Path attachment string cid Content attachment use reference content embed image stre override attachment stre encode File encoding encoding stre type File MIME type stre disposition disposition use exception bool true successfully add attachment public function path cid encode type disposition inline try throw new path MIME type specify try work file type type throw new encoding filename string filename attachment array path filename encoding type false disposition cid catch Exception throw return false return true add embed attachment include image sound document type filename contain extension sure set type appropriate MIME type stre string attachment binary datum string cid Content attachment use reference content embed image stre filename attachment contain extension attempt set MIME type attachment example image MIME type stre encode File encoding Encoding default stre type MIME type preference automatically derive type stre disposition disposition use exception bool true successfully add attachment public function string cid encode type disposition inline try MIME type specify try work type type throw new encoding attachment array string encoding type true disposition cid catch Exception throw return false return true validate encoding stre encode bool protect function return encoding true check embed attachment present cid string cid bool protect function attachment inline cid return true return false check inline attachment present bool public function attachment inline return true return false check attachment non inline present bool public function attachment attachment return true return false check message alternative body set bool public function return clear queue address give kind stre kind public function static function param use kind return kind clear recipient public function clear recipient public function clear recipient public function clear recipient public function clear recipient type public function clear string binary attachment public function clear custom header public function add error message error container string msg protect function null msg msg detail msg code msg additional info msg return format date string public static function time zone default avoid error default set properly return server return unknown string protect function result result SERVER result false result false result return return result validate string contain valid value use address address include stre host host address check bool public static function syntax limit host return false like bracketed address return false remove dot result numeric string address check thing like consider valid host name host valid address return false host false syntactically valid return true return false error message current language stre key string protect function default language key link troubleshoot doc connection failure far big cause support question usually fault return return key fallback return key check error occur bool true error occur public function return add custom header value overload contain header value value stre Custom header value header value Exception public function value null null value false pass value value explode value value contain line break value false throw new header value return false value return true return custom header array public function return create message body string automatically inline image create plain text version convert overwrite exist value body source message content user input handle relative look image file image convert inline provide relative path leave untouched probably break email convert data uri image embed attachment want apply transformation set Body directly stre message message string stre Absolute path base directory prepend relative path image advanced use internal text converter custom converter string transform message body Exception public function advanced false message image image trailing data embed image data image match match datum datum recognise leave continue decoded datum data URI image multiple place embed different encoding cid datum datum cid embed message cid cid message continue process relative provide absolute local path contain parent dir traversal false change inline image cid change absolute include anonymous protocol filename directory directory directory cid directory directory filename cid filename message cid cid message message body line break make quote printable encoding work well advanced message view activate email application return convert string plain text note old version function bundled advanced converter remove license reason example usage default conversion plain custom converter plain converter new return stre text convert advance boolean value use internal converter provide callable custom conversion string public function advanced false return return MIME type file extension stre ext File extension string MIME type file public static function mime application excel application application mac cpt application mac bin application doc application word application application application application application application application application application application application class application octet stream application octet stream application octet stream application octet stream application octet stream application octet stream application octet stream sea application octet stream application octet stream oda application oda application application postscript application postscript application postscript application application application application excel ppt application application application application director dir application director application director application application application application application application application source application shockwave flash sit application tar application tar application tar application application zip application zip mid audio midi midi audio midi audio audio audio audio audio audio audio ram audio audio rpm audio audio audio audio image gif image gif image image image image tiff image tiff image tiff image image image image sequence image image sequence message text text text text log text plain text text plain txt text plain text text text text text calendar text text video video video mpg video video video video video video video movie video movie video video ext mime return return application octet stream Map file MIME type default application octet stream arbitrary binary datum string filename file path need exist file string public static function case path strip query string get extension false filename ext return multi byte safe replacement drop replacement cross platform safe stre path filename path need exist file option constant string return specify piece public static function option null ret basename extension filename path switch option case case return case case basename return case case extension return case case filename return default return ret set reset instance property avoid function verbose efficient error prone hard debug set property directly usage example stre property set mix value value set property bool public function value value return true return false Strip newline prevent header injection stre str string public function return str Normalize line break string convert UNIX Mac Windows line break single line break format default message body preserve consecutive break stre text stre kind line break use default string public static function null null text text convert need text text return text remove trail break string stre text string text remove break public static function return return current line break format string string public static function return set line break format string stre protect static function set public private key file password MIME sign stre string stre Password private key string optional path chain certificate public function quote printable encode header stre txt string public function line len len ord ord ord ord ord ord line line ord return line generate signature stre exception string signature value public function throw new return signature return return generate canonicalization header use relaxed algorithm section canonicalized header use regardless mailer setting stre Header string public function break regardless mailer header line broad definition whitespace define mean break daft like vertical tab header header array line line key line header miss skip invalid likely happen explode split trail leave line false continue value explode line case header head white space value convert space value value slightly unclear say delete space end value say delete space colon result trim end value elimination apply field return line generate canonicalization body use simple algorithm section canonicalized body use regardless mailer setting stre body message Body string public function return line ending body multiple trail line break single return create header body new message header stre Header line stre subject Subject stre body Body exception string public function subject body hash algorithm relaxed simple method header body txt method time sign header ask list date subject reply message content type mime version mailer subject false subject subject match match previously header start new header save previous label value match fold continuation current header unfold line finish header label value header header include signature true space continue extra custom header ask sign true value custom header space straight header continue tag true long value false implode body pack binary hash body body ident ident signature header include signature value tag append calculate signature signature ident set header signature signature return signature detect string contain line long maximum line length allow section stre str bool public static function return bool str string contain special character double quote escape double quote backslash stre str string public static function str string contain char double quote double quote escape backslash return str string untouched need quote return str allow public read access property send queue address include array public function return allow public read access property send queue address include array public function return allow public read access property send queue address include array public function return allow public read access property send queue address include array public function return allow public read access property send queue address include array public function return perform callback bool array array array stre subject stre body string array extra protect function subject body extra subject body extra instance public function return set instance public function email transport class Version project Synchro Jim Andy Prevost Brent original founder Jim Andy Prevost GNU Lesser General Public License program distribute hope useful WARRANTY imply warranty MERCHANTABILITY FITNESS PARTICULAR PURPOSE class version number string const VERSION line break constant string const port use specify int const maximum line length allow section exclude trail break int const maximum line length allow reply section include trail line break int const debug level output int const debug level client server message int const debug level client server server client message int const debug level connection status client server server client message int const debug level message int const debug output level option debug output default Client command client command server response plus connection status low level datum output message int public handle debug output option echo output plain text appropriate CLI Output escape line break convert appropriate browser output output error log configure alternatively provide callable expect param message string debug level level echo debug level level message str alternatively pass instance compatible logger debug level output new public echo use Info bool public false timeout value connection second default minute section need high function correctly host anti spam measure int public Timeout long wait command complete second default minute section int public pattern extract transaction reply DATA command capture group return message correct internal tracking string protect postfix queue queue mail queue transaction issue response DATA command detect protect socket server connection resource protect error information command array protect error error detail reply server send null string receive protect set extension send reply command index array extension name value index accord command send represent server case element array value boolean true array contain extension option null string receive protect recent reply receive server string protect output debug info user select method stre str Debug string output int level debug level message DEBUG constant protect function level level return logger return clash build function name echo str level return switch case output log break case output bit well looking safe output echo str break case echo default line break str str echo trail space trim readability trail break connect server stre host server host int port port number connect int timeout long wait connection open array option array option bool public function port null timeout option error avoid confusion sure connect connect generate error connect server return false port server connection opening true array port timeout option false info set inside return false open announcement CLIENT return true response mean wrong say server wait send QUIT response error handle response wait QUIT server shut close error return false create connection server stre host server host int port port number connect int timeout long wait connection open array option array option protect function port null timeout option static enable default provider disable cache result null connection host port timeout work place miss feature connection available fall connection host port timeout connect properly fail connect server string error return false server long respond long timeout read support timeout function win max bother unlimited disabled max timeout max false timeout return connection initiate encrypt session bool public function return false good drop inclusion add manually encrypt connection true return bool Perform authentication run hello hello string user stre password password string auth type CRAM PLAIN LOGIN optional instance authentication bool true successfully authenticate public function authenticate password null null allow return false extension available try find proper authentication method allow stage stage mean auth allow stage change return false method request UNSPECIFIED Auth method available server implode request specific auth type check server support try null true auth method available null auth mechanism specify attempt use order CRAM secure CRAM LOGIN PLAIN method true method break support authentication method find return false method select true requested authentication method support server return false LOGIN switch case plain authentication auth plain return false encode password User Password password return false break case login authentication auth login return false return false return false break case CRAM authentication CRAM auth CRAM return false challenge challenge response response password encode credential return case instance set prior request auth null return false authentication auth return false break default method support return false return true calculate hash work like datum key case function available stre datum datum hash stre key key hash string protect function key return datum key following borrow manual implementation need install compute Lance rush length key key key key return data check connection state bool true connect public function connect socket valid connect notice EOF catch check connect return false return true look good return false close socket clean state class use function try use QUIT quit public function close null null connection cleanup null clean serialization close send DATA command issue data command send server mail transaction message send header header need single line follow message header message body separate additional implement datum string message datum send bool public function use standard DATA return false server ready accept datum accord send character single line include break datum line need break small line fit limit look line start prepend additional note count line length limit line break explode line distinguish complete message plain message body check field line separate contain space header process line blank line header field false false true line line line false line small line long fast len backwards try find space char line break avoid break middle word pos match false pos nice break find add hard break pos pos line pos find point pos deal line pos processing header add char new line section line line line line server stuff section DATA datum send complete command end datum command result END return result send command identify send server receiving server make sure client server known state implement stre host host connect bool public function extend hello host return true server shut service return false return host send command low level implementation hello stre hello string stre host bool hello protect function host noerror hello host noerror null return noerror parse reply command discover server extension case parameter discover server stre type protect function line line char contain response code follow space continue field explode type field switch case SIZE field field break case auth field break default field true field send MAIL command start mail transaction email address specify return true successful false true mail transaction start recipient command call follow data command implement MAIL string Source address message bool public function return MAIL MAIL send QUIT command close socket error argument true implement QUIT bool connection close error occur bool public function true noerror QUIT err error noerror err error quit command return noerror send RCPT command set argument return true recipient accept false reject implement RCPT string address address message send string Comma separate list notification SUCCESS FAILURE DELAY specify notification ignore bool public function rcpt RCPT address notify false notify SUCCESS failure delay value value false notify value rcpt RCPT address implode notify return RCPT rcpt send command Abort transaction currently progress implement bool true success public function reset return send command server check return code stre command command send server stre actual command send expect expected integer success code bool true success protect function expect command connect return false line break command false false command contain line break return false command code possible error code explanation match match code int null error code response line detail simple parsing fail code int null detail CLIENT array expect true command command fail detail code error return false return true send command start mail transaction email address specify return true successful false true mail transaction start recipient command call follow data command command send message user terminal log send email implement string address message bool public function return send command stre verify bool public function return send NOOP command alive alive actually bool public function noop return NOOP send TURN command optional command class support method Definition complete class implement future implement TURN bool public function turn TURN command implement notice return false send raw datum server stre datum datum send stre command Optionally command control debug output number byte send server false error public function command transcript leave enable debug output post online leak credential hide credential low level User Password Password true SERVER credential hide SERVER datum result datum return result late error array public function return extension available server public function return server response method work way dependent argument value current state send return null populate send return server return boolean false string return null populate send return server string extension exist return true option auth mechanism support return false stre extension public function send return return return false handshake information server extension available return return reply server string public function return read server response eof socket timeout occur operation tell line read character symbol space need read string protect function connection bad straight away return datum time null pass var param reference signal inspire false message select fail message return false select system interrupt incoming signal try select interrupt system false retry continue break select time sec break noise suppression error handle str INBOUND datum str response char valid say handle character space line break char reading break loop array access significant micro break log break info stream time sec break check read take long time reach sec break return datum enable disable address generation bool enable public function false enable address generation mode bool public function return set error message code stre message error message stre detail detail error string associated error code stre Extended code protect function detail error message detail detail set debug output method method mechanism use debug output callable handle public function echo method debug output method string public function return set debug output level int level public function level debug output level int public function return Set timeout int timeout timeout duration seconds public function timeout timeout int public function return report error number string int error number return stre error message return stre file error occur int line number error occur protect function notice connection fail notice string notice error line extract return transaction base list pattern provide host provide response DATA command reply receive return null pattern match return false protect function reply null false match reply match break return queue transaction transaction reply receive return null pattern match return false public function return