将var放在其他var PHP中

时间:2014-01-21 17:23:03

标签: php variables

这是一件简单的事情,但我正在努力解决这个问题。我需要把var放在另一个里面。我需要将作者var放在var布局中。我怎样才能做到这一点?这是一个例子。

$layout='
<h2 class="title"><a href="#">Title</a></h2>
<p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$Someone.'</a></p>
<div class="entry">
</div>';

if($autor=="john")
  $someone=$autor;
  echo $layout;
else if($autor=="mary")
  $someone=$autor;
  echo $layout; 

4 个答案:

答案 0 :(得分:5)

您只需稍微更改代码的顺序即可。您必须先定义变量才能使用它:

  $someone=$autor;

$layout='
<h2 class="title"><a href="#">Title</a></h2>
<p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$someone.'</a></p>
<div class="entry">
</div>';

echo $layout; 

if语句也可以简化,因为$someone总是变为$autor的值。事实上,你真的可以完全消除它。

此外,如果控件结构中包含的块多于一行,则必须使用花括号。

PHP变量也区分大小写。因此$someone$Someone不会引用相同的内容。

答案 1 :(得分:2)

我删除了if / else条件,因为它没有任何意义:

$layout='<h2 class="title"><a href="#">Title</a></h2><p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$autor.'</a></p>
<div class="entry">
</div>';

答案 2 :(得分:0)

你需要在尝试调用之前委托$ someone变量,你还需要为变量保留相同的大小写:

if($autor=="john"){
  $someone=$autor;
} else if($autor=="john") {
  $someone=$autor;
}

$layout='
<h2 class="title"><a href="#">Title</a></h2>
<p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$someone.'</a></p>
<div class="entry">
</div>';

echo $layout;

答案 3 :(得分:0)

这不是“将变量放在另一个变量中”。它推迟了评估,和/或延迟了字符串插值。

远程可能,但在这种情况下,您的解决方案很简单:只需不要过早构建$layout