Rövid összefoglaló a mail osztály használatához és működési elveihez.
Deklarált változók és jelentésük
var $html; – html levél tartalom
var $text; – text levél tartalom
var $output; – renderelt küldés előtti nyers tartalom egy eml fájl, ami még nem tartalmazza a levél transzport során hozzáadódó későbbi header részeket
var $html_text; – html tartalom text formában
var $html_images; – beágyazott fájlok/képek tömbje
var $image_types; – fájl/kép formátumok
var $build_params; – mime paraméterek tömbje
var $attachments; – csatolt tartalmak tömbje
var $headers; – mime header rész
A mail classt használjuk általában egy $mimemessage példányaként.
Példányosítás:
$mimemessage = new email(array('X-Mailer: osCommerce'));
ahol a tömbként átadott elemek a $build_params részei lesznek.
Az osztály későbbi paraméterezése kívülről direkt módon is megtörténhet:
$mimemessage->build_params['MY_PARAM'] = 'PARAMETER'
A beágyazott képek vagy egyéb tartalmak lehetnek fájl link vagy fájl tartalmúak. Itt logikailag nem csak képekről beszélhetünk, ezért van egy $images_types tömb, amihez adhatunk PDF, MP3, ZIP vagy más kiterjesztéseket is.
A fájl tartalom beolvasást a
$mimemessage->get_file()
függvény adja vissza a beágyazáshoz.
Ha beágyazott linket használunk kép névnek (string), akkor abszolút URL hivatkozásként kell megadni a fájl nevet.
Az $images_types tömböt a
$mimemessage->images_types['kiterjesztés'] = 'type/kiterjesztés';
direkt külső hívással paraméterezhetjük.
A kiterjesztések illetve a típusok például a következőek lehetnek:
.rar application/x-rar-compressed, application/octet-stream
.zip application/zip, application/octet-stream
A html_images fájlokat/képeket rendereléskor automatikusan beágyazza a rendszer a html tartalomba, amit a
find_html_images($images_dir)
belső függvény hajt végre a regisztrált fájl kiterjesztések felhasználásával. Az eljárás email szabványos belső hivatkozást generál a CID paraméterrel.
HTML kód részlet:
<img src="cid:<?php echo $html_images[$image_name]; ?>" alt="" />
<a href="cid:<?php echo $html_images[$image_name]; ?>">file name</a>
ahol a php-val kiírt fájlnév fog kicserélődni.
Ha anchor taggal linkelünk, akkor érdemes lehet más nevet használni, mint a fájl nevet link névnek is megadni , mert akkor az nem cserélődik ki.
A boundary részek automatikusan épülnek fel a belső függvények és a behívott mime class használatával a send() függvényhívás során.
Renderelés előtt a
$mimemessage->build_message($params)
felhasználásával automatikusan hozzáadhatjuk a headerhez a korábban létrehozott megkívánt paraméter táblánkat.
Fájl csatolmányokat a
add_attachment($file, $name = '', $c_type='application/octet-stream', $encoding = 'base64')
függvénnyel adhatunk a levélhez.
Injektálhatunk saját objektum partokat is a levélbe, ha szükség lenne rá
add_alternative_part(&$obj)
add_mixed_part(&$obj)
add_html_part(&$obj)
add_text_part(&$obj)
add_related_part(&$obj)
add_attachment_part(&$obj)
add_html_image_part(&$obj)
A fenti bemutatás remélem kellő információt nyújt majd az integrációkhoz.