如何使用PHP在div中回显变量

时间:2012-10-23 09:30:38

标签: php

在下面的php代码中,我试图回显$ title和$ desc的值,但它没有显示仅显示变量名称的值。任何帮助将不胜感激。

foreach ($prod as $product) { 
    $title=$product['title'];
    $desc=$product['desc'];

    echo '
    <div class="detail">
    <div class="img"><img src="images/pro1.png"/></div>
    <div class="textdetail"><p><b>$title</b><br /></p>
    <p><a href="#">$desc</a></p>
    </div><br />
    </div>';
}

7 个答案:

答案 0 :(得分:6)

你必须使用双引号,或者将它们带到字符串之外 - 出于清晰的原因,我个人总是更喜欢后一种方法。要么有效。

这应该这样做:

foreach ($prod as $product) { 
    $title=$product['title'];
    $desc=$product['desc'];

    echo '
    <div class="detail">
    <div class="img"><img src="images/pro1.png"/></div>
    <div class="textdetail"><p><b>'.$title.'</b><br /></p>
    <p><a href="#">'.$desc.'</a></p>
    </div><br />
    </div>
    ';
}

答案 1 :(得分:1)

<?php
foreach ($prod as $product) { 
 $title=$product['title'];
 $desc=$product['desc'];?>
  <div class="detail">
   <div class="img"><img src="images/pro1.png"/></div>
   <div class="textdetail"><p><b><?php echo $title ;?></b><br /></p>
    <p><a href="#"><?php echo $desc;?></a></p>
   </div><br />
  </div>
<?php
 }?>

这是同时使用php和html的最佳做法。

答案 2 :(得分:0)

尝试使用大括号{}将变量包装在echo中。这是一个更简单的解决方案。像这样:

foreach ($prod as $product) { 
    $title=$product['title'];
    $desc=$product['desc'];

    echo "
    <div class='detail'>
    <div class='img'><img src='images/pro1.png' /></div>
    <div class='textdetail'><p><b>{$title}</b><br /></p>
    <p><a href='#'>{$desc}</a></p>
    </div><br />
    </div>
    ";

}

答案 3 :(得分:0)

你需要连接字符串,或者使用双引号而不是单引号,但在这种情况下,你需要转义字符串中的所有双引号。

另一个解决方案是使用heredoc:

echo <<<EOF
    <div class="detail">
    <div class="img"><img src="images/pro1.png"/></div>
    <div class="textdetail"><p><b>$title</b><br /></p>
    <p><a href="#">$desc</a></p>
    </div><br />
    </div>
EOF;

答案 4 :(得分:0)

使用双引号将变量名替换为其内容(不要忘记转义双引号):

echo "
    <div class=\"detail\">
    <div class=\"img\"><img src=\"images/pro1.png\"/></div>
    <div class=\"textdetail\"><p><b>$title</b><br /></p>
    <p><a href=\"#\">$desc</a></p>
    </div><br />
    </div>
    ";

或者使用字符串连接(更快):

echo '
    <div class="detail">
    <div class="img"><img src="images/pro1.png"/></div>
    <div class="textdetail"><p><b>'.$title.'</b><br /></p>
    <p><a href="#">'.$desc.'</a></p>
    </div><br />
    </div>
    ';

答案 5 :(得分:0)

<?php foreach ($prod as $product):?>
    <div class="detail">
    <div class="img"><img src="images/pro1.png"/></div>
    <div class="textdetail"><p><b><?=$product['title']?></b><br /></p>
    <p><a href="#"><?=$product['desc']?></a></p>
    </div><br />
    </div>
<?endforeach;?>

OR

foreach ($prod as $product) { 
    $title=$product['title'];
    $desc=$product['desc'];

    echo '
    <div class="detail">
    <div class="img"><img src="images/pro1.png"/></div>
    <div class="textdetail"><p><b>' . $title . ' </b><br /></p>
    <p><a href="#">' . $desc . ' </a></p>
    </div><br />
    </div>
    ';
}

答案 6 :(得分:0)

<?php foreach ($prod as $product) { ?>

    <div class="detail">
    <div class="img"><img src="images/pro1.png"/></div>
    <div class="textdetail"><p><b><?php echo $product['title']; ?></b><br /></p>
    <p><a href="#"><?php echo $product['desc']; ?></a></p>
    </div><br />
    </div>

<?php } ?>