Keresés

Hirdetés

Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz Sk8erPeter #6669 üzenetére

    Ja igen, és a SetError() metódus protected, míg maga a tagváltozó ($ErrorInfo) nem, ez kissé egészségtelen koncepció szerintem. :)
    A SetError helyesen protected, de magának a tagváltozónak is legfeljebb annak kéne lennie...

    Sk8erPeter

  • cucka

    addikt

    válasz Sk8erPeter #6669 üzenetére

    Amúgy ez fura, azt nézem, hogy a PHPMailer osztályban (5.1) egyáltalán nincs is ellenőrzés arra vonatkozóan, hogy a felhasználó nem cseszte-e el a karakterkódolás bepötyögését
    Belefér, ez nem olyan nagy baj.

    persze nem csak erről szól az OOP, de ha már lehet, egy helyen megvalósítjuk a változók beállításának megfelelő ellenőrzését is - egyből a beállításkor
    Igen, meg lehet oldani, gondolom nem akarták felsorolni az összes lehetséges encoding típust és azok variációit (utf8 vs. utf-8). A karakterkódolás csak egy string, amit a levél header részébe illeszt a phpmailer, ezért nincs ellenőrzés.

    miért férek hozzá kívülről az ErrorInfo-hoz?
    Errorinfo protected (v. private) kéne legyen és kéne mellé írni egy getErrorInfo()-t. Vagy maradhat public, de akkor a __set-ben le kell kezelni azt az esetet, amikor kívülről piszkálják. (Egyébként simán elképzelhető, hogy le van kezelve, csak elkerülte a figyelmedet, nincs előttem a phpmailer forrása)

    Lehet, hogy a függvénybe ugrálásnak nagyobb az overheadje
    Igen, de annyira azért nem nagy. (Az overhead-et az adja, hogy létre kell jöjjön a call stack, ami a függvény hívása után fel kell szabaduljon)

    Egyébként gondolom Te is így példányosítod a PHPMailert:
    Igen, de az én kivételeim nem jelennek meg a képernyőn, hanem kapok róluk szépen formázott emailt (és ugyanez igaz a hibákra is) :)

    [ Szerkesztve ]

Új hozzászólás Aktív témák