0

我的代码中有一个部分如下所示:

$accounts[] = array("id" => 1, "fullName"=>"Lorem ipsum", "email"=>"lorem@example.com");
$accounts[] = array("id" => 2, "fullName"=>"Lorema ipsum", "email"=>"lorema@example.com");
$toUsers = array();
foreach($accounts as $account){
    $toUsers[] = $account['fullName'] . "<" . $account['email'] . ">";
}
$toString = implode(", ",$toUsers);

这个循环应该给我一个字符串,格式像一个电子邮件标题(我想使用邮件功能)。我希望结果是,$toString = "Lorem ipsum<lorem@example.com>, Lorema ipsum<lorema@example.com>";但我得到的只是$toString = "Lorem ipsum, lorema Ipsum";

我需要做什么才能让“<”和“>”在 php 中使用字符串?

谢谢,JNK

4

3 回答 3

10

将其输出到 HTML 文档是吗?您的浏览器可能会将其解释为标记。检查视图-> 源代码,看看它是否存在。

于 2011-03-03T20:32:57.280 回答
4

什么都没有。它们在 PHP 中没有特殊意义。

另一方面,如果您使用 PHP 生成 HTML,那么它们在输出的 HTML 文档中将具有特殊的意义。使用htmlspecialchars().

例如

$toString = htmlspecialchars(implode(", ",$toUsers));

最佳实践是在您将 插入 HTML 文档时(而不是之前),以这种方式将数据转换为 HTML 格式。

于 2011-03-03T20:33:15.610 回答
0

您发布的代码完全按预期工作。您可能已经通过将您的原始代码减少到这篇文章来解决这个错误。

于 2011-03-03T20:33:52.487 回答