On 2/4/2011 5:37 AM, Steve Staples wrote:
> Hello Guys/Gals,
>
> it's friday (at least where I am it is) and I have an issue with a
> script that I just started using again. The problem is, is that it uses
> the built in PHP mail() function, and on my testing server, mail()
> doesn't work. The other issue, is that I use SMTP Auth to connect to my
> mail server, so that when mail sends out, it comes from my mail server
> so that there is less of a chance for being marked as SPAM.
>
> So, what I am looking to do, is use either the trust old Pear::Mail or
> PHPMailer scripts (I am sure there are other ones out there, but those
> are the 2 I am most familiar with).
>
> So now to my actual question. How can I override the built-in PHP
> mail() function, to let either of those 2 (or something else someone may
> suggest) to act in the same manner as the mail() function?
>
> Is this easy? I've googled, but haven't seen any reference to doing
> what I am looking to do (maybe I just can't google)
>
> Steve
>
>
You cannot "override" a function. You will have to write a new function,
"my_mail" or some such. Have it take the same arguments as the built in mail
function, but internally it uses phpmailer or the likes. Then, do a search and
replace for " mail(" with " my_mail("
One other possible option, which I had not contemplated until now, would be to
actually specify a replacement sendmail executable when setting up the sendmail
option in the php.ini. You could specify a php script that can run as though it
was sendmail, accept the same arguments, etc... but do all the phpmailer stuff
inside.
Jim Lucas
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php