2

例如,我想用 html 将代码 php 添加到变量中

$html = '<b></b> <?php echo $lang["text"] ?>';

但它不解释 php 代码。我究竟做错了什么?

4

6 回答 6

6

使用这样的字符串连接:

$html = '<b></b>' . $lang['text'];

或在双引号字符串中插入变量,如下所示:

$html = "<b></b>${lang['text']}";

两个版本都是正确的,使用你喜欢的那个。

于 2012-06-14T12:42:30.663 回答
5

你想要的是所谓的字符串插值(阅读它是如何为 PHP 工作的)。

您的特定示例将使用

$html = "<b></b> {$lang['text']}";

字符串插值仅发生在双引号字符串 ( "string here") 中。

于 2012-06-14T12:42:40.487 回答
3

逃避输出非常重要。(安全基础)

$html = sprintf('<b>%s</b>', htmlspecialchars($lang['text']));
于 2012-06-14T14:02:09.063 回答
2

当您已经处于“运行 PHP 代码模式”时,不能在字符串中间从“输出原始文本模式”切换到“运行 PHP 代码模式”

$html = "<b></b> ${lang['text']}";

......虽然你为什么想要一个空的粗体元素超出了我的范围。

于 2012-06-14T12:37:22.083 回答
1
<?php

$html = '<b>'.$lang['text'].'</b>';

?>
于 2012-06-14T12:36:53.643 回答
-5

确保文件扩展名是 php。

<?php
     $html = '<b>' . $lang["text"] . '</b>';
?>
于 2012-06-14T12:40:46.007 回答