2

たとえば、コードphpをhtmlで変数に追加したい

$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 に答える