0

これは私のコードです...

<?php

$j = 1;
$imgClass = "cname";
$imgSet = 'imgSet'.$j;
$setClass = $imgSet.' '.$imgClass;

$divHtml = '<div class=' . $setClass . '>' .'some text'. '</div>';

echo $divHtml;

?>

必要な出力は次のとおりです。

<div class="imgSet1 cname">some text</div>

現在の出力は次のとおりです。

<div class="imgSet1" cname="">some text</div>

どこが間違っていたのかわからない...

前もって感謝します

4

4 に答える 4

2

実際には引用符で囲んでいませんclass。それ以外の場合、コードは完全に問題ありません。

これを変える:

$divHtml = '<div class=' . $setClass . '>' .'some text'. '</div>';

これに:

$divHtml = '<div class="' . $setClass . '">' .'some text'. '</div>';
于 2013-02-28T18:33:50.803 に答える
0

二重引用符がありません:

$divHtml = '<div class="' . $setClass . '">some text</div>';

'一部のテキスト'を一重引用符で囲む必要はありません。

于 2013-02-28T18:35:22.723 に答える
0

コードを分解してみましょう:

$j = 1;
$imgClass = "cname";
$imgSet = 'imgSet'.$j; // "imgSet1"
$setClass = $imgSet.' '.$imgClass; // "imgSet1 cname"

$divHtml = '<div class=' . $setClass . '>' .'some text'. '</div>'; // "<div class=imgSet1 cname>some text</div>"

具体的には、変数が実際に何であるかをよく見てください。

私は提案します:

$divHtml = "<div class='$setClass'>some text</div>"; // or use =\"..\" in class
于 2013-02-28T18:36:33.090 に答える
0

引用は人為的エラーが発生しやすいです。それを連結と組み合わせるのはさらに悪いことです。"可変補間を試してください、

 $divHtml = "<div class='$setClass'>some text</div>";

またはHEREDOC構文(通常は長い文字列の場合)、

$divHtml = <<<EOD
    <div class='$setClass'>some text</div>;
EOD;

これにより、コード全体に小さくて混乱しやすいマークが散在するのを防ぎます。

于 2013-02-28T18:39:53.853 に答える