PHP中单引号和双引号的用法举例
一直都以为在PHP中,' 和"是没有区别的,今天看了中原大学孙仲岳老师的视频教程,才发现,这两者用法是有区别的,举个简单的例子:
1.php
<?$str='冰冻鱼';
echo '$str 的博客地址是http://www.webxuexi.net' ;//注意这里是单引号哦
?>
2.php
<?
$str='冰冻鱼';
echo "$str 的博客地址是http://www.webxuexi.net"; //注意这里是双引号哦,$str后有空格
?>
3.php
<?
$str='冰冻鱼';
echo $str.'的博客地址是http://www.webxuexi.net'; //这里单双引无影响,据说单引速度快
?>
大家看结果就可以知道1.php显示的是单引号里的内容,并没有把$str换成"冰冻鱼",即显示“$str 的博客地址是http://www.webxuexi.net”而2.php和3.php都把$str换成了"冰冻鱼",即显示的是“冰冻鱼 的博客地址是http://www.webxuexi.net”,
这样一看,区别就很明显了,单引号会把里面的变量名也当作字符串处理。而双引号会自动查找里面的变量名,并替换,这里要注意一下,变量名后如果跟的是一个普通的字符(不包括标点符号,如逗号),一定要在变量名后加空格,不加程序就没法判断你的变量名是到哪结束了。
对比2.php和3.php,我们可以发现,双引号的这种用法可以在字符串相加时省很多力。建议不用变量时用单引号,据说速度快,个人没感觉。
相关文档:
在PHP中使用过SESSION的朋友可能会碰到这么一个问题,SESSION变量不能跨页传递。这令我苦恼了好些日子,最终通过查资料思考并解决了这个问题。我认为,出现这个问题的原因有以下几点:
1、客户端禁用了cookie
2、浏览器出现问题,暂时无法存取cookie
3、php.ini中的session.use_trans_sid = 0或者编译时没有打开--enable ......
PHP 5.2 及以上版本提供了 json_encode 和 json_decode 函数,相当好用。
而之前的版本则需要下载网友们自行开发的库(有兴趣的可以看下 http://code.itlearner.com/php/JSON-class.html )
可以参考如下这个方法来在低版本上扩充这两个函数:
if (!function_exists('json_encode') && !function_exists('j ......
尽量使用单引号而不是双引号。
尽量使用带条件的include而不是require。
尽量使用echo而不是print。
尽量使用内嵌的HTML而不是echo。
尽量使用str-replace()而不是ereg-replace()。
尽量sql不用联合查询。
......
1.如果一个方法可静态化,就对它做静态声明。速率可提升至4倍。
2.echo 比 print 快。
3.使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接。
4.在执行for循环之前确定最大循环数,不要每循环一次都计算最大值。
5.注销那些不用的变量尤其是大数组,以便释放内存。
6.尽量避免使用__get,__se ......