欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

关于echo出字符串的问题

程序员文章站 2024-02-18 16:28:10
...
假如字符串有一个变量,需要输出变量的值。

还有一种方式:

$a=' hello';
echo "my name  is {$a}";

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

回复内容:

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

还有一种方式:

$a=' hello';
echo "my name  is {$a}";

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

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

$a = "hello";
echo "$aworld";
echo "{$a}world";

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

$a='hello ';
$aword=' word';
echo "my name  is $aword";  //my name  is word
echo "
"; echo "my name is {$a}word"; //my name is hello word

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

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

//只是为了区别变量而已,如下:
$a = "he";
//如果这样,你的变量$allo是不存在的
echo "$allo";
//所以,需要加一个定界符来加区分
echo "{$a}llo";
//echo  hello
//这种情况只在双引号后中有用。如果你需要打印的变量前面没有英文或容易混淆变量的情况下可以不用的。
相关标签: php