所以我使用Postmark发送电子邮件,而我所需的类需要一个变量作为邮件正文,如下所示:
$email->to(Input::post('email'))->subject("Verify Your Email Address")->html_message($html)->send();
如果我将$html
设置为普通html
,则可以正常工作。
我想要做的是从我的网站发送另一个php文件的内容作为这个html。
我试过了:
$Vdata = file_get_contents('verification.php');
这个工作正常,但是一旦我尝试传递变量就会给我一个错误:
找不到文件错误
并发送一封空白电子邮件,例如:
$Vdata = file_get_contents('verification.php?url=blah');
基本上我只需要$html
作为verification.php?url=blah
的内容,这样我就可以将变量传递给该文件。
有人可以帮忙吗?
答案 0 :(得分:1)
您正在执行本地文件包含,这仅表示文件名。不允许使用网址(特别是查询字符串),因为您不执行HTTP请求。 PHP将寻找一个文件,其名称字面上包含?
,u
,r
等等......这当然不存在。
如果你想使用查询字符串,那么你必须使用一个完整的绝对URL,包括协议:
include('http://....?url=...');
然而,这非常低效,而且非常危险。因为您现在正在执行url中指定的文件。您将获得其输出,而不是文件中的原始PHP代码。
如果要将数据传递给包含的文件,则只需要变量:
$foo = 'bar';
include('test.php');
并使用查找/使用文件中的那些变量。