2013-12-17 106 views
0

我在我的本地主機上運行Apache服務器,我試圖從PHP腳本發送電子郵件,但它不起作用,我從來沒有收到電子郵件。Php電子郵件腳本不發送電子郵件

這是PHP的默認實例:

<?php 
$to  = '[email protected]'; 
$subject = 'the subject'; 
$message = 'hello'; 
$headers = 'From: [email protected]' . "\r\n" . 
    'Reply-To: [email protected]' . "\r\n" . 
    'X-Mailer: PHP/' . phpversion(); 

mail($to, $subject, $message, $headers); 
?> 

在哪裏的問題?

+2

你還有一個郵件服務器在你的本地主機上運行嗎? 'mail()'的返回值是什麼? – andrewsi

+0

如果你有一個郵件服務器運行它的日誌說什麼? – sHentschel

+0

我沒有運行mailserver,只是apache和php安裝在機器上。 – Jonnie

回答

0

參考:問題

你實際上沒有一個電子郵件服務器在你的工作環境設置,即爲什麼電子郵件沒有被髮送的評論部分。

mail函數返回false如果郵件發送失敗,你應該進行檢查,看看有什麼函數調用返回:

$mail = mail($to, $subject, $message, $headers); 

if (!$mail) 
{ 
    do_something(); 
} 

要設置你的localvhost電子郵件服務器,你可以使用XAMPP對於Windows自帶Mercury Mail;一個在您的本地環境中啓用電子郵件的工具。

在本地設置郵件服務器有不同的方法,但這是我熟悉的。一個簡單的Google搜索就可以做到。