2017-04-26 74 views
0

我想知道当你用另一个变量把变量放到另一个变量中时有什么区别。所以我有一个变量“身体”,并在那里有HTML标签,文本和PHP变量,我发现我可以把它们放在钩子之间,但他们会反应完全一样。例如:PHP变量挂钩

在这段代码中,变量在{ }之间。

$body = " 
      <table style='border: 1px;'> 
      <tr> 
      <td><b>Naam:</b></td><td>{$naam}</td><br> 
      </tr> 
      </table>" 

而这里不是。

$body = " 
      <table style='border: 1px;'> 
      <tr> 
      <td><b>Naam:</b></td><td>$naam</td><br> 
      </tr> 
      </table>" 

而这两者的反应完全相同。所以任何人都可以告诉我,如果这有实际用途,或者这就像所有的PHP有10种方法来做同样的事情。

在此先感谢。

加成

这不是This重复。它没有解释为什么变量内部的变量可以放在大括号之间的部分。

+1

它适用于例如用于插值的数组/对象符号。 –

+3

使用括号也使它更具可读性(就我的观点而言)。也要注意内联变量只在字符串被双引号时才起作用。 –

+0

是的,它确实使得它是可读的,肯定是@Niek van der Maanden。 –

回答

1

当您想要添加复杂的指令或访问对象/数组属性时,使用"中的大括号是特别有用的。

此代码将很好地工作

<?php echo "Test {$foo['bar']}"; ?> 
<?php echo "Test {$foo->bar}"; ?> 

虽然这个人会失败

<?php echo "Test $foo['bar']"; ?> 
<?php echo "Test $foo->bar"; ?> 

所以,是的,它如果你正在访问一个简单的变量不是特别有用,但是当你要玩数组和对象,这很有用。