假设我们有这个代码$test =’text’;. echo $test [0]和echo $test {0}之间有什么区别?结果是一样的.
处理包含类似字符数组的字符串的变量是一种好习惯吗?
好的,我将汇总我的评论作为答案:
原文链接:https://www.f2er.com/php/137989.html引用手册
Strings may also be accessed using braces,as in $str{42},for the
same purpose. However,this Syntax is deprecated as of PHP 6. Use
square brackets instead.
此外,尽管没有文档,{}访问器也适用于数组,这使得$foo {$bar}和$foo [$bar]完全相同.它只是为了方便Perl程序员的旧语法.
关于你的第二个问题,如果将字符串视为一个字符数组是好的做法:是的,如果它对你的任务有用,那就去做吧.在像C这样的低级语言中,字符串是字符数组,所以很自然地对待它们.
但请记住,PHP具有糟糕的unicode支持.因此,如果您的字符串采用多字节编码(即UTF-8),则可能无法按预期工作.在这种情况下更好地使用multibyte functions.