php语法分单引号,双引号么?
//a.php
1.a.php,两句语句都是对,为什么?
php语言,不区分单引号与双引号么?
2.b.php,这句语句是错,为什么?
回复讨论(解决方案)
1.本来就是对的,字符串可以包在单引号对中也可以包在双引号对中
2.printf是函数 这一点是不同于print和echo的 所以要用printf('ccc');
1.本来就是对的,字符串可以包在单引号对中也可以包在双引号对中
2.printf是函数 这一点是不同于print和echo的 所以要用printf('ccc');
在C语法中,单引号与双引号,是两个完全不同的概念。绝不能混用!
在php语法,它们好像是一样?
php函数也很古怪啊。
有些部分可以省略,
如:括号( )。
我以前也遇到过此类的疑惑,尤其是也数据库的查询操作结合起来时,单引号和双引号区别更大。
我看到一份网上资料,链接为http://blog.csdn.net/wangjunhe/article/details/8191880,
收获不小,不妨你也看看。
1、在你的例子中没有体现单引号与双引号的区别,在php中,有些情况下单/双引号还是有区别的。
2、a.php中用了print,而b.php中是printf,两个是不同的概念。
手册说:
print 实际上不是一个函数(它是一个语言结构),因此你可以不必使用圆括号来括起它的参数列表
而printf 是一个真正的函数,需要用括号括起来 ,因此你第二个例子中如果写成: printf('CCC') ; 就对了
$a = 123;echo "$a";echo '$a';看看就知道了
在很多情况下,计算机语言是没有"为什么"的
就是这么设计的,你就得这么做
楼上xu大的例子很犀利
php规定双引号中既可以包含字符串常量 也可以包含变量
在运行的时候 会自动把变量中保存的字符串输出出来
但如果使用单引号 不管包不包含变量 都会把纯粹的字符串输出出来
参照xu大的例子可以很好的理解
1.a.php,两句语句都是对,为什么?
不为什么,就是这样设计的,print和echo是属于语言结构,不是函数
php语言,不区分单引号与双引号么?
区分单引号和双引号,单引号是标准的字符串数据,而双引号则是可以任务是php的特殊模板,因为可以解析双引号中的变量内容
2.b.php,这句语句是错,为什么?
printf是一个标准的内置函数,不带括号就是一个函数调用,当然不能执行
另外
$a = 123;echo "$a";echo "
";echo '$a';echo "
";echo "'$a'";echo "
";echo '"$a"';
结果
123
$a
'123'
"$a"
1、在你的例子中没有体现单引号与双引号的区别,在php中,有些情况下单/双引号还是有区别的。
2、a.php中用了print,而b.php中是printf,两个是不同的概念。
手册说:
print 实际上不是一个函数(它是一个语言结构),因此你可以不必使用圆括号来括起它的参数列表
而printf 是一个真正的函数,需要用括号括起来 ,因此你第二个例子中如果写成: printf('CCC') ; 就对了
有这方面的官方手册么?
给个链接!
php语法是分单引号和双引号的,具体的区别网上有很多,反正各有优缺点。
a.php中的echo和print用单引号不出错,可以这么认为:echo、print其实不是函数,是一个操作符而已;
b.php中的printf是函数,后面必须接括号。
1.a.php,两句语句都是对,为什么?
不为什么,就是这样设计的,print和echo是属于语言结构,不是函数
php语言,不区分单引号与双引号么?
区分单引号和双引号,单引号是标准的字符串数据,而双引号则是可以任务是php的特殊模板,因为可以解析双引号中的变量内容
2.b.php,这句语句是错,为什么?
printf是一个标准的内置函数,不带括号就是一个函数调用,当然不能执行
有这方面的官方手册(中文翻译)么?
1、在你的例子中没有体现单引号与双引号的区别,在php中,有些情况下单/双引号还是有区别的。
2、a.php中用了print,而b.php中是printf,两个是不同的概念。
手册说:
print 实际上不是一个函数(它是一个语言结构),因此你可以不必使用圆括号来括起它的参数列表
而printf 是一个真正的函数,需要用括号括起来 ,因此你第二个例子中如果写成: printf('CCC') ; 就对了
有这方面的官方手册么?
给个链接!
http://php.net/manual/zh/function.print.php
1、在你的例子中没有体现单引号与双引号的区别,在php中,有些情况下单/双引号还是有区别的。
2、a.php中用了print,而b.php中是printf,两个是不同的概念。
手册说:
print 实际上不是一个函数(它是一个语言结构),因此你可以不必使用圆括号来括起它的参数列表
而printf 是一个真正的函数,需要用括号括起来 ,因此你第二个例子中如果写成: printf('CCC') ; 就对了
有这方面的官方手册么?
给个链接!
http://php.net/manual/zh/function.print.php
php语言,“语言结构”是个怎样的概念?
它与C语言的结构相同么?
语言结构 是一个程序块(过程),函数型语言没有对等的成分
你或许可以看做是宏
简单的说,语言结构既可以用圆括号包含着使用,也可以不用圆括号使用。
而内建函数必须用圆括号包含着使用。
php中输出变量,或者直接输出字符串一般是使用echo函数:
比如
$a="Hello,world!
";echo $a;echo "$a";echo '$a';
运行结果是:
变量加双引号会将变量先取出值,然后输出;
变来那个加单引号会将变量的名称直接输出;
printf函数一般用来格式化字符串
输出:
Hello world. Day number 123
关于printf函数的详细用法,你可以看看:
http://www.w3school.com.cn/php/func_string_printf.asp
另外
$a = 123;echo "$a";echo "
";echo '$a';echo "
";echo "'$a'";echo "
";echo '"$a"';
结果
123
$a
'123'
"$a"
echo "'$a'";
上面这类语句,包括多个单引号或双引号。
WEB服务器,解析这样的语句。
是先解析外部符号,还是先解析内部符号呢?
解析顺序怎样?
另外
$a = 123;echo "$a";echo "
";echo '$a';echo "
";echo "'$a'";echo "
";echo '"$a"';
结果
123
$a
'123'
"$a"
echo "'$a'";
上面这类语句,包括多个单引号或双引号。
WEB服务器,解析这样的语句。
是先解析外部符号,还是先解析内部符号呢?
解析顺序怎样?
其实这个例子正好说明了你的问题
正式因为先解析外部的,最后一个即使内部是双引号也依然按单引号解析为字符串而非变量....
额,这是我根据结果推论的...不知道准确不
另外
$a = 123;echo "$a";echo "
";echo '$a';echo "
";echo "'$a'";echo "
";echo '"$a"';
结果
123
$a
'123'
"$a"
echo "'$a'";
上面这类语句,包括多个单引号或双引号。
WEB服务器,解析这样的语句。
是先解析外部符号,还是先解析内部符号呢?
解析顺序怎样?
其实这个例子正好说明了你的问题
正式因为先解析外部的,最后一个即使内部是双引号也依然按单引号解析为字符串而非变量....
额,这是我根据结果推论的...不知道准确不
php官方手册(中文翻译)有这说明么?
这个学习了 以前以为不分的呢
双引号里面会被转义,单引号不会被转义