我很好奇这三种类型的字符串有什么不同。
echo "Hello my name is ".$name;
echo "Hello my name is $name";
echo "Hello my name is {$name}";
我知道在第三种情况下,当你使用带有键的数组时,它比第二种情况更需要。例如,我知道下面的命令行不通。
echo "Hello my name is $data['name']";
你需要做…
echo "Hello my name is{$data['name']}";
让它工作
有人能解释一下为什么会这样吗?
大家都在发表自己的观点,这很好,但事实是:
- 连接更快
- 通过连接获得的时间是微不足道的,并不是证明其使用的好理由 最后,无论你选择什么方法,代码都会做同样的事情
基本上,你怎么做并不重要,只要选择你最喜欢的并坚持下去。如果您和一群人一起工作,为了代码的整洁,请使用相同的约定。
"$foo"
和"{$foo}"
之间的区别只是解析的问题- PHP解析器在插入时只解析变量名的某些字符,除非周围有{}
(在这种情况下,任何字符都被解析)。
这是每个人的意见。我喜欢
echo "Hello my name is $name";
echo "Hello my name is ".$data['name'];
echo "Hello my name is $data['name']";
你需要做…
"你好,我的名字是{$data['name']}";
你可以做
echo "Hello my name is $data[name]";
当在字符串中简单的变量插值就足够时,我强烈反对串联。过多的连接会导致代码不可读。
"text $variable text"
表示简单变量
"text {$array['key']} text"
对于复杂变量