php中输出变量加大括号{}作用

php中输出变量加大括号{}作用

php输出变量加大括号,这是什么写法?看下面一段代码:
代码如下复制代码

<?php

header("Content-Type:text/html; charset=utf-8");

$test="1变量1";

//echo "前面有字符串aa ".$test." bb后面字符串";

echo "前面有字符串aa {$test} bb后面字符串";

?>

可以看出php输出变量加大括号同使用.运算符输出变量字符串效果是一样,总结出下面3点以帮助理解php输出变量加大括号{}的作用:

1. 表示{}里面的是一个变量 ,执行时按照变量来处理;

2. 在字符串中引用变量使用的特殊包括方式,这样就可以不使用.运算符,从而减少代码的输入量了;

3. 防止变量名和后面的字符串连在一起。

附:

字符串变量中大括号{}的作用:

PHP 变量后面加上一个大括号{},里面填上数字,就是指 PHP 变量相应序号对应的字符。

例如:

代码如下

$str = 'hello';

echo $str{0}; // 输出为 h

echo $str{1}; // 输出为 e

如果要检查某个字符串是否满足多少长度,可以考虑用这种大括号{} 加 isset 的方式替代 strlen 函数,因为 isset 是语言结构,strlen 是函数,所以使用 isset 比使用 strlen 效率更高。

比如判断一个字符串的长度是否小于 5:

代码如下

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