一、在函数或流程控制语句中的使用
成都创新互联公司主营浪卡子网站建设的网络公司,主营网站建设方案,成都app软件开发,浪卡子h5小程序开发搭建,浪卡子网站营销推广欢迎浪卡子等地区企业咨询
例如:function test(){}、if(){}、foreach(){}
在函数中常用的方法就是保持数据在作用域范围的执行
二、$str{4}在字符串的变量的后面跟上{}大括号或者中括号[],里面填写了数字,这里是吧字符串变量当成数组处理。举个例子如下:
?php
$str='phpernote.com';
echo $str{0}; // 输出 p
echo $str[1]; // 输出 h
$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'='phpernote','com');
echo "$array['name']";//用此句会报语法错误
echo "{$array['name']}";//此句正常,大括号内的字符将作为变量来处理
注意:${$a[1]} 与${$a}[1] 是完全不同的:
${$a[1]} 这里$a[1]是一个变量;
${$a}[1] 这里$a是一个变量;
这种写法的好处就是在字符串中引用变量的时候,这样就可以不使用.运算符,从而减少代码的输入量。
1.建议使用json格式,这样转换简单
使用json_decode或使用网上有现成的json.class.php的类,实现转换
2.如果是自定义的
可以使用简单的语句实现提取。
?php
$param = "{name='abc' count='2'}";
$tmp = substr($param, 1, -1);
$tmpArr = explode(' ', $tmp);
foreach ($tmpArr as $v) {
eval('$' . $v . ';');
}
echo $name;
echo $count;
?
加{}有时候是为了防止变量名和后面的字符串连在一起嘛例如{$cid}dd如果cid=aa那么{$cid}dd=aadd
不加的话你自己看看了$ciddd,岂不变成了ciddd变量了~~
PHP变量放在大括号里面的含义
//Thefollowingisokayasit'sinsideastring.Constantsarenot
//lookedforwithinstringssonoE_NOTICEerrorhereprint"Hello$arr[fruit]";//Helloapple
//Withoneexception,bracessurroundingarrayswithinstrings
//allowsconstantstobelookedforprint"Hello{$arr[fruit]}";//Hellocarrotprint"Hello{$arr['fruit']}";//Helloapple
下面几个比较能说明原因的解释是:
表示{}里面的是一个变量
,执行时按照变量来处理
在字符串中引用变量使用的特殊包括方式,这样就可以不使用.运算符,从而减少代码的输入量了。
其实输出那块是等同于print
"hello
".$arr['fruit'];
PHP:
字符串变量中大括号(花括号{})的作用
PHP
变量后面加上一个大括号{},里面填上数字,就是指
PHP
变量相应序号的字符。
例如:$str
=
'hello';
echo
$str{0};
//
输出为
h
echo
$str{1};
//
输出为
e
如果要检查某个字符串是否满足多少长度,可以考虑用这种大括号(花括号)加
isset
的方式替代
strlen
函数,因为
isset
是语言结构,strlen
是函数,所以使用
isset
比使用
strlen
效率更高。
比如判断一个字符串的长度是否小于
5:
不错,大括号一般用于代码块,标明这是一个独立的模块,例如函数或类,class xxxx{}
function xxx{};
同时,大括号还有一下几个作用;
1、将多个独立语句合并为一个复合语句,例如 if ... else ...中经常如此使用
2、在变量间接引用中进行定界,避免歧义。例如 ${$my_var[8]}与${$my_var}[8]的区分
3、用于指示字符串变量中的单个字符(下标从0开始),例如
$my_str="1234"; $my_str{1}='5'; //现在 $my_str 内容为 '1534'
小括号一般用于表达式,运算,判断等,
例如if($a == 123)
$a = 4*(1+2);
但同时小括号也经常用于标注优先级与逻辑关系,
例如:sql语句中 where (b=1 or c=2) and d=3