首頁 >後端開發 >php教程 >关于echo出字符串的问题

关于echo出字符串的问题

WBOY
WBOY原創
2016-06-06 20:44:331241瀏覽

假如字符串有一个变量,需要输出变量的值。

<code class="lang-php"><?php $a=' hello';
echo "my name  is $a";
</code></code>

还有一种方式:

<code class="lang-php">$a=' hello';
echo "my name  is {$a}";
</code>

有时候在动态使用变量名的时候也会有这两种方式:
$this->{$property} = $argument或者$this->$property
这两种效果都是一样的,但是到底有啥区别呢?

回复内容:

假如字符串有一个变量,需要输出变量的值。

<code class="lang-php"><?php $a=' hello';
echo "my name  is $a";
</code></code>

还有一种方式:

<code class="lang-php">$a=' hello';
echo "my name  is {$a}";
</code>

有时候在动态使用变量名的时候也会有这两种方式:
$this->{$property} = $argument或者$this->$property
这两种效果都是一样的,但是到底有啥区别呢?

没什么太大的区别,用花括号只是方便PHP解析的时候认准变量而已..比如你可以试试:

<code>$a = "hello";
echo "$aworld";
echo "{$a}world";
</code>

也就是界定变量的,当一个变量名是另一个变量名前面部分的时候加{}才能得到你想要的

<code class="lang-php">$a='hello ';
$aword=' word';
echo "my name  is $aword";  //my name  is word
echo "<br>";
echo "my name  is {$a}word";  //my name  is hello word
</code>

在用echo的时候,大括号{}只能在双引号中使用

和bash中类似,区分变量和字符串

<code class="lang-php">//只是为了区别变量而已,如下:
$a = "he";
//如果这样,你的变量$allo是不存在的
echo "$allo";
//所以,需要加一个定界符来加区分
echo "{$a}llo";
//echo  hello
//这种情况只在双引号后中有用。如果你需要打印的变量前面没有英文或容易混淆变量的情况下可以不用的。
</code>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn