使用Mail函数在PHP中发送邮件的帮助

使用Mail函数在PHP中发送邮件的帮助,php,email,Php,Email,我的代码- $from = "From:Company\n\r"; $mesg = include('mail.html'); function mail($u,'hey',$mesg); 基本上,我想发送邮件,其中的消息需要是mail.html 帮助…需要将mesage发送到$u不要在邮件前使用功能,只需这样做即可 mail($emailto, $subject, file_get_contents('mail.html'), $headers); 这将不起作用,因为include()包含

我的代码-

$from = "From:Company\n\r";
$mesg = include('mail.html');
function mail($u,'hey',$mesg);
基本上,我想发送邮件,其中的消息需要是mail.html


帮助…需要将mesage发送到
$u

不要在邮件前使用
功能
,只需这样做即可

mail($emailto, $subject, file_get_contents('mail.html'), $headers);

这将不起作用,因为
include()
包含一个文件并计算(解释内容),您试图使它像一个函数一样返回一个它没有返回的值


您需要做的是使用
file\u get\u contents()将文件内容读入变量
或类似函数,然后将其用作消息正文。

我建议您使用PHPMailer类。它将为您提供许多工具和功能,下载内容还包含示例,您需要包含类文件,然后免费使用。有关mor信息,请参见以下示例(由手册中的示例组成),说明在使用时如何做到这一点:


我还需要将邮件抄送至support@example.com. 谢谢。我不明白你的问题。你在重新定义邮件问题吗?*顺便说一句,我建议使用php
mail
函数,而不是简单的php
mail函数。你甚至没有在上面搜索php邮件,对吗?所有“相关”主题都显示在右侧,并有足够的答案。请查看php的邮件文档页面-有许多如何构造邮件消息的示例
$headers
也适用于CCI。我应该使用普通的php邮件功能还是更好的功能,如swiftmail等?阅读整个页面,以及邮件的php手册页面。一旦你花点时间去理解它是如何工作的,这真的很容易。至于你的第二个问题,那要看情况而定。如果您正试图发送群发邮件,或者需要mime附件等高级功能,您应该研究SwiftMailer、PHPMailer或类似的解决方案。@cz这项技术太酷了。谢谢你能告诉我如何使用$u代替收件人的电子邮件吗$u是注册时的用户名。Thanks@Czechnology此外,我是否只需要包含图书馆中所有文件中的一个文件?@sarthak,你不能向用户名发送电子邮件,你需要一个电子邮件地址。如果您有用户的电子邮件地址和姓名,则可以使用
->setTo(数组('users@emailaddress.com“=>”用户名“)
@sarthak,您只需要包含一个文件,该文件负责包含其他文件(如果需要)。当然,您需要保存在系统中的所有文件。@cTechnology嗯,电子邮件存储在$_POST['email']或$email中……我如何使用它?
<?php

require_once 'lib/swift_required.php';

//Create the message
$message = Swift_Message::newInstance()

  //Give the message a subject
  ->setSubject('Your subject')

  //Set the From address with an associative array
  ->setFrom(array('your@email.com' => 'Your Name'))

  //Set the To addresses with an associative array
  ->setTo(array('recipient@domain.org' => 'Recipient\'s name'))

  //Set CC
  ->setCc('support@example.com')

  //Give it a body
  ->setBody(file_get_contents('mail.html'))

  ;

//Create the Mailer
$mailer = Swift_Mailer::newInstance(Swift_MailTransport::newInstance());

//Send the message
$result = $mailer->send($message);