php变量什么情况下加大括号{}
2010-06-28 16:04
246 查看
如:
$sql = "insert into article (`channel_id`,`title`,`detail`,`pub_time`) values ('{$cid}','{$title}','{$detail}','{$time}');";
不加似乎也可以,加{}是什么意思呢?
还有字段名 为什么要以``包括呢?
==================================================
最佳答案
PHP变量放在大括号里面的含义
// The following is okay as it's inside a string. Constants are not
// looked for within strings so no E_NOTICE error here
print "Hello $arr[fruit]"; // Hello apple
// With one exception, braces surrounding arrays within strings
// allows constants to be looked for
print "Hello {$arr[fruit]}"; // Hello carrot
print "Hello {$arr['fruit']}"; // Hello apple
下面几个比较能说明原因的解释是:
表示{}里面的是一个变量 ,执行时按照变量来处理
在字符串中引用变量使用的特殊包括方式,这样就可以不使用.运算符,从而减少代码的输入量了。
其实输出那块是等同于print "hello ".$arr['fruit'];
PHP: 字符串变量中大括号(花括号{})的作用
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 ) 好。
$sql = "insert into article (`channel_id`,`title`,`detail`,`pub_time`) values ('{$cid}','{$title}','{$detail}','{$time}');";
不加似乎也可以,加{}是什么意思呢?
还有字段名 为什么要以``包括呢?
==================================================
最佳答案
至少便于阅读嘛~~~''是insert into语句要求的,因为字符串要成对出现嘛 加{}有时候是为了防止变量名和后面的字符串连在一起嘛 例如 {$cid}dd 如果cid=aa 那么{$cid}dd=aadd 不加的话你自己看看了$ciddd,岂不变成了ciddd变量了~~
PHP变量放在大括号里面的含义
// The following is okay as it's inside a string. Constants are not
// looked for within strings so no E_NOTICE error here
print "Hello $arr[fruit]"; // Hello apple
// With one exception, braces surrounding arrays within strings
// allows constants to be looked for
print "Hello {$arr[fruit]}"; // Hello carrot
print "Hello {$arr['fruit']}"; // Hello apple
下面几个比较能说明原因的解释是:
表示{}里面的是一个变量 ,执行时按照变量来处理
在字符串中引用变量使用的特殊包括方式,这样就可以不使用.运算符,从而减少代码的输入量了。
其实输出那块是等同于print "hello ".$arr['fruit'];
PHP: 字符串变量中大括号(花括号{})的作用
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 ) 好。
相关文章推荐
- php变量什么情况下加大括号{}
- php变量什么情况下加大括号{}
- php变量什么情况下加大括号{}
- php 输出变量加大括号{}的作用
- php 输出变量加大括号{}的作用
- 【java】什么情况下变量不等于自身
- php各种编码集详解和以及在什么情况下进行使用 发布:mdxy-dxy 字体:[增加 减小] 类型:转载 字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。 字符集是多个字符的集
- php中不同情况下整形变量可当成整形也可是字符串型来使用
- [转载]什么情况下该使用变量延迟?
- 个人理解:什么情况下需要使用protected修饰类成员变量
- 在什么情况下使用单件模式比全局变量好
- PHP在变量前面加&是什么意思
- php 什么是变量?
- PHP变量作用域(花括号、global、闭包)
- C语言声明数组变量时,在什么情况下,可不指定数组大小
- Boolean,这个一般在什么情况用这个变量类型?
- PHP: 字符串变量中大括号
- [转载]什么情况下该使用变量延迟?
- 学习IOS开问题篇--类中的成员变量如果不实例化是什么情况
- 转:PHP变量作用域(花括号、global、闭包)