试图创建发送电子邮件的功能,但它';It’不工作..刚接触php…我做错了什么? 函数sendmail(){ $to=$email; $subject=‘销售|购买说明’; $message='1 感谢您购买“我的产品”。 您的帐户信息 ------------------------- 名字:“你的名字” 电子邮件:“您的电子邮件” ------------------------- 您可以通过单击“购买”按钮,在提供的框中输入产品名称和数量,然后单击“购买”来购买我们的产品。; $headers='发件人:我的公司'。“\r\n”; 邮件($to、$subject、$message、$headers); }

试图创建发送电子邮件的功能,但它';It’不工作..刚接触php…我做错了什么? 函数sendmail(){ $to=$email; $subject=‘销售|购买说明’; $message='1 感谢您购买“我的产品”。 您的帐户信息 ------------------------- 名字:“你的名字” 电子邮件:“您的电子邮件” ------------------------- 您可以通过单击“购买”按钮,在提供的框中输入产品名称和数量,然后单击“购买”来购买我们的产品。; $headers='发件人:我的公司'。“\r\n”; 邮件($to、$subject、$message、$headers); },php,function,email,Php,Function,Email,我想你的引号有问题。您可以使用“来封装字符串,但您也可以在字符串中使用这些标记,因此它不起作用,解释器不知道字符串的结束位置并引发错误。因此,您不应该使用相同的引号来封装也在其中使用的字符串,或者必须在字符串中转义引号(通过在其前面放置一个\)。我的建议是在字符串周围使用“,因为在字符串内部不使用这些引号 您应该知道,如果使用“或”来封装字符串,则会有所不同。当您使用“时,字符串中的变量将替换为它们的值,但当您使用” function SendEmail() { $to =

我想你的引号有问题。您可以使用
来封装字符串,但您也可以在字符串中使用这些标记,因此它不起作用,解释器不知道字符串的结束位置并引发错误。因此,您不应该使用相同的引号来封装也在其中使用的字符串,或者必须在字符串中转义引号(通过在其前面放置一个
\
)。我的建议是在字符串周围使用
,因为在字符串内部不使用这些引号

您应该知道,如果使用
来封装字符串,则会有所不同。当您使用
时,字符串中的变量将替换为它们的值,但当您使用


function SendEmail() {

    $to      = $email;  
    $subject = 'Sales | Purchase Instructions';  
    $message = ' 

    Thank you for your purchasing 'My Product'.

    Your account information 
    ------------------------- 
    Name:   'Your Name'
    Email:  'Your Email' 

    ------------------------- 

    You can purchase our product by clicking on the purchase button, entering product name, and quantity in the provided boxes, and then click purchase.;  
    $headers = 'From:My Company <me@mycompany.net>' . "\r\n";  


mail($to, $subject, $message, $headers);  
}
预期产出为:


你好,MonkeyZeus,

你说的“不工作”是什么意思?这段代码本身工作正常,在“SendMail”函数中不起作用,我认为这与}有关,或者{位于错误的位置大括号位于正确的位置。在您发布的代码中,只有引号是错误的。@Zcast如果工作正常,则关闭错误报告。此网站上突出显示的语法甚至会告诉您引号被误用。Put
error\u reporting(E\u ALL)
在你的
$to
之前,看看发生了什么事。在你的帮助下,它现在真的开始工作了(当我说工作时,我的意思是它现在真的在发送电子邮件)。谢谢大家。
<?php

$name = 'MonkeyZeus';
$message = 'Hi there '.$name.', <--this is a variable but this is a literal quote inside a quote --> \'';

echo $message;

?>