在打印的php变量周围包装文本

时间:2012-12-08 06:24:28

标签: php drupal

我很难找到关于如何在我的Drupal站点中在打印的php变量的同一行添加文本的答案。它必须非常容易,但我正在学习。当我输入

Time:<?php print render($content['field_duration']); ?>minutes

我明白了:

Time:
5
minutes

无论如何要让它成为“时间:5分钟”?

4 个答案:

答案 0 :(得分:2)

如何将常量字符串放在PHP中?

<?php print render($dur = 'Time: ' . implode($content['field_duration']) . ' minutes'); ?>

render函数通过引用获取参数,因此字符串必须存储在变量中。 implode函数使数组成为一个字符串。

答案 1 :(得分:1)

更“Drupal”的方式:

$field_items = field_get_items('node', $node, 'field_duration');

echo 'Time: ' . $field_items[0]['value'] . ' minutes';

最好将它放在预处理函数中并将变量传递给模板文件,而不是直接在那里进行,但逻辑应该适用于你放置的任何地方。

答案 2 :(得分:0)

尝试

&lt;?php print render(“Time:{$ content ['field_duration']} minutes”); ?&GT;


希望这会有所帮助。

答案 3 :(得分:0)

我想用css或没有render()来解决它会更容易。

CSS就像这样:

<style>
  #text, #time {
   float: left;
  }
</style>
<div>
  <div id="text">Time: </div>
  <div id="time">
    <?php print render($content['field_duration']); ?>
  </div>
</div>

没有render() - 只需自己输出$content['your_field']var_dump()此变量用于确定它包含哪些数据,然后直接echo此数据(如果是数组则通过foreach)。我希望它能够正常工作。