在php中使用大括号基本有如下三种情况,下面本篇文章对这三种使用情况做一个总结。

一、function name(){}, for(){}等等这种情况就不多说了,不说也知道是做什么用的了。

二、$str{4}在字符串的变量的后面跟上{}大括号或者中括号[],里面填写了数字,这里是吧字符串变量当成数组处理。举个例子如下。

<?php
$str='youkud.com';
echo $str{0}; // 输出 y
echo $str[1]; // 输出 o
$str='000';
$str{0}='1';
echo $str; // 输出 100

注意:利用这一特性可用来检查某个字符串是否满足多少长度,使用 isset 的方式替代 strlen 函数,因为 isset 是语言结构,strlen 是函数,所以使用 isset 比使用 strlen 效率更高。比如判断一个字符串的长度是否小于 5,如下:

if(!isset($str{5})) 比 if(strlen($str)<5) 更好。

三、对于可变变量使用大括号,比如:{$val},这时候大括号就是告诉PHP,括起来的部分要当成变量处理。如下例子:

<?php
$array=array('www','name'=>'youkud','com');
echo "$array['name']";//用此句会报语法错误
echo "{$array['name']}";//此句正常,大括号内的字符将作为变量来处理

注意:${$a[1]} 与${$a}[1] 是完全不同的:

${$a[1]} 这里$a[1]是一个变量;

${$a}[1] 这里$a是一个变量;

这种写法的好处就是在字符串中引用变量的时候,这样就可以不使用.运算符,从而减少代码的输入量。