using core php mail() to send via gmail SMTP

前端 未结 5 918
说谎
说谎 2020-12-09 09:54

Is it possible to send mail in core php via gmail smtp without using any external class?

相关标签:
5条回答
  • 2020-12-09 10:36

    It is possible, although you have to modify php.ini settings, see the PHP manual. You can modify php.ini settings at runtime with ini_set

    0 讨论(0)
  • 2020-12-09 10:36

    If you have access to edit the php.ini then you can do something like this:

    [mail function]
    SMTP = ssl://smtp.gmail.com
    smtp_port = 465
    username = info@Mmydomainname.com
    password = myemailpassword
    sendmail_from = info@mydomainname.com
    

    Alternatively you can do:

    <?php
    ini_set( 'smtp_port', 465 );
    //etc
    
    0 讨论(0)
  • 2020-12-09 10:37

    you can do this by PHPmailer Library it already having gmail.php file .

    just open and place your detail in that file , you can also use the similar code in your file .

    You must make setting in your gmail account setting to allow smtp mailing

    0 讨论(0)
  • 2020-12-09 10:38

    I don't think it is possible because you need to perform an authentification. Also, you need to connect via an SSL socket, I don't know if the stock mail() function support this.

    If you are willing to use the Pear Mail package, you might want to take a look at this:

    Send email using the GMail SMTP server from a PHP page

    0 讨论(0)
  • 2020-12-09 10:44

    There's a lot of miscommunication about this. It is 100% possible to send emails using gmail via PHP's simple "mail()" command. And it is 100% easy.

    Install SSMTP:

    sudo apt-get install ssmtp
    

    Edit its settings file:

    sudo nano /etc/ssmtp/ssmtp.conf
    

    Inside, make it similar to this, but with your own credentials:

    mailhub=smtp.gmail.com:587
    AuthUser=youremail@gmail.com
    AuthPass=password
    UseSTARTTLS=YES
    
    # You can only do this if you've verified your domain with Gmail.
    # If you haven't, delete, or add a # before this
    hostname=yourwebsite.com
    
    FromLineOverride=YES
    

    Lastly, open your php.ini, and search for sendmail_path and use this value:

    sendmail_path = /usr/sbin/ssmtp -t
    

    That's it! Test it out in your PHP, with the simple 1-line mail function:

    mail('to@address.com', 'Subject', 'Message', 'From: Your name <youremail@gmail.com>');
    

    Update on Gmail Security

    Gmail now blocks this by default. You can still do this by visiting: http://www.google.com/settings/security/lesssecureapps

    Turn this feature ON.

    0 讨论(0)
提交回复
热议问题