Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从字符串中调用PHP函数_Php - Fatal编程技术网

从字符串中调用PHP函数

从字符串中调用PHP函数,php,Php,我找不到一个解决方案,如何将单引号和双引号组合在一起以响应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(

我找不到一个解决方案,如何将单引号和双引号组合在一起以响应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))'>"

有人能帮我把这些结合起来吗?get_permalinks和get page是wordpress内置函数,因此它们应该具有函数行为

您不能在双引号内调用函数


不能在双引号内调用函数


只需按如下方式对字符串进行压缩:

echo "<a href='". get_permalink(get_page($r->id)) . "'>" . get_permalink(get_page($r->id)) . "</a><br>";
此外,如果您想知道单引号和双引号之间的区别,请参见以下内容:

只需按如下方式连接字符串:

echo "<a href='". get_permalink(get_page($r->id)) . "'>" . get_permalink(get_page($r->id)) . "</a><br>";
此外,如果您想知道单引号和双引号之间的区别,请参见以下内容:

尝试以下方法:

if($result as $r)
{ 
  echo "<a href='" . get_permalink(get_page($r->id)) . "'>" . get_permalink(get_page($r->id)) . '</a><br>';
}
试着这样做:

if($result as $r)
{ 
  echo "<a href='" . get_permalink(get_page($r->id)) . "'>" . get_permalink(get_page($r->id)) . '</a><br>';
}

当PHP代码位于字符串中时,除非使用eval,否则无法运行PHP代码。但是,您可以使用将代码与字符串分开:

$url = get_permalink(get_page($r->id));
printf('<a href="%s">%1$s</a><br>', htmlspecialchars($url, ENT_QUOTES, 'UTF-8'));

%1$s是位置格式说明符;这样做是为了编码的$url值只需传递一次。

除非使用eval,否则当PHP代码位于字符串中时,无法运行PHP代码。但是,您可以使用将代码与字符串分开:

$url = get_permalink(get_page($r->id));
printf('<a href="%s">%1$s</a><br>', htmlspecialchars($url, ENT_QUOTES, 'UTF-8'));
%1$s是位置格式说明符;这样做是为了编码的$url值只需传递一次