我找不到一个解决方法,如何将单引号和双引号结合起来回显HTML并同时调用一个函数:
foreach ($result as $r) {
echo "<a href='get_permalink(get_page($r->id))'>".get_permalink(get_page($r->id)).'</a><br>';
}
问题是这部分被解析为文本,而不是php
"<a href='get_permalink(get_page($r->id))'>"
Cansome有人帮我把这个结合起来? get_permalinks和get page是wordpress内置的函数,因此它们应该具有函数行为
答案 0 :(得分:2)
您无法在双"
引号内调用函数。
foreach ($result as $r)
{
echo "<a href='".get_permalink(get_page($r->id))."'>".get_permalink(get_page($r->id)).'</a><br>';
}
答案 1 :(得分:2)
当它在字符串中时运行PHP代码是不可能的(除非使用eval)。但是,您可以使用printf()
将代码与字符串分开:
$url = get_permalink(get_page($r->id));
printf('<a href="%s">%1$s</a><br>', htmlspecialchars($url, ENT_QUOTES, 'UTF-8'));
%1$s
是位置格式说明符;这样做是为了使编码的$url
值只需传递一次。
答案 2 :(得分:1)
像这样连接字符串:
echo "<a href='". get_permalink(get_page($r->id)) . "'>" . get_permalink(get_page($r->id)) . "</a><br>";
此外,如果您想知道单引号和双引号之间的区别,请参阅: What is the difference between single-quoted and double-quoted strings in PHP?
答案 3 :(得分:0)
尝试这种方式:
if($result as $r)
{
echo "<a href='" . get_permalink(get_page($r->id)) . "'>" . get_permalink(get_page($r->id)) . '</a><br>';
}