我有一个php函数,如下所示
function get_some_info()
{
$location = other_function_that_returns_a_string();
return <<<HTML
<script>
$("<h1> <?php echo $location ?> </h1>").insertAfter("header");
</script>
HTML;
}
但是我不能让我的变量动态显示。
我也尝试过这样的东西
$("<h1> <?php $location = other_function_that_returns_a_string() echo $location?> </h1>").insertAfter("header");
而且它从来不会动态显示任何东西。怎样才能让我的变量显示出来呢?
发布于 2018-07-30 03:25:14
问题是您使用的是HEREDOC语法。
你不需要在其中使用<?php
和?>
。
这将工作得很好:
$("<h1> $location </h1>").insertAfter("header");
下面是我在PhpFiddle中测试的代码
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<header>
Header
</header>
<?php
function other_function_that_returns_a_string(){
return "A string";
}
function get_some_info(){
$location = other_function_that_returns_a_string(); // Will be "A string"
return <<<HTML
<script>
$("<h1> $location </h1>").insertAfter("header");
</script>
HTML;
}
echo get_some_info();
?>
https://stackoverflow.com/questions/51582990
复制相似问题