如果我问了一些太具体的问题,我很抱歉,但我是PHP的初学者,这让我有点恼火。我想编写一个函数来处理数据和发送电子邮件,但是当我把电子邮件函数放在另一个函数中时,它就不起作用了。为什么会发生这种情况?
如此:
if (do some checking) {
//...
if (mail($to, $subject, $body)) {
echo 1;
} else {
echo 2;
}
} else {
echo 3;
}
这不起作用(我把代码剪掉了,它仍然不起作用):
function sendMail($to, $subject, $body) {
if (mail($to, $subject, $body)) {
return 1;
} else {
return 2;
}
}
//...
if (do some checking) {
//...
echo sendMail($to, $subject, $body);
} else {
echo 3;
}
这对我来说很好。
<?php
function sendMail($to, $subject, $body) {
if (mail($to, $subject, $body)) {
return 1;
} else {
return 2;
}
}
if (true) {
echo sendMail('some@email.org', 'some subject', 'some body');
} else {
echo 3;
}
?>
得到1回显。所以sendMail函数确实有效。
"do some checking"在脚本中解析为什么?检查。
运行脚本时输出是1、2还是3 ?
尝试以下操作:(顺便说一句,您需要将'email@example.com'替换为您可以检查的有效电子邮件)
<?php
function sendMail($to, $subject, $body) {
if (mail($to, $subject, $body)) {
return 1;
} else {
return 2;
}
}
if (1) {
$to = "email@example.com";
$subject = "Message Subject";
$body = "Message Body";
echo sendMail($to, $subject, $body);
} else {
echo 3;
}
?>