如何使用sprintf()打印带有HTML的URL

时间:2018-02-18 12:08:38

标签: php html printf

我正在尝试使用sprintf()打印一些包含带有一些HTML标记的URL的文本。我怎样才能做到这一点?

例如;

$txt_string = 'GENERAL TEXT <a href="URL" target="_blank" rel="noopener">linked text</a> MORE TEXT.';

如何在不在$ txt_string中包含HTML的情况下使用sprintf进行打印?

我会尝试更具体。我想将该URL作为参数传递给sprintf(),但这不是问题。问题是HTML将格式化该URL。有没有一种简单的方法可以从$ txt_string中删除该HTML并将其放在其他位置?预期结果只是具有该URL的普通文本字符串。

1 个答案:

答案 0 :(得分:1)

是的,您可以使用sprintf()执行此操作并格式化给定变量。

$link = filter_var( 'http://example.com',  FILTER_SANITIZE_URL );

$format_link = '<a href="'. $link .'" target="_blank" rel="noopener">linked text</a>';

$txt_string = sprintf( 
    "GENERAL TEXT %s MORE TEXT.",
    $format_link
);

echo $txt_string;