php发送邮件 报错smtp error:could not authenticate
方法1:将fsockopen函数替换成pfsockopen函数
首先,在php.ini中去掉下面的两个分号
;extension=php_sockets.dll;extension=php_openssl.dll然后重启一下,没有的话可以去http://pecl.php.net/下载。
因为pfsockopen的参数与fsockopen基本一致,所以只需要将@fsockopen替换成@pfsockopen就可以了。
方法2:使用stream_socket_client函数
一般fsockopen()被禁,pfsockopen也有可能被禁,所以这里介绍另一个函数stream_socket_client()。
stream_socket_client的参数与fsockopen有所不同,所以代码要修改为:
代码如下 复制代码
$this->smtp_conn = stream_socket_client('tcp://'.$host.':'.$port, $errno, $errstr, $tval);这样就可以了。
赞0
踩0