php中的那些小事

来源:互联网 发布:知乎图标如何变 编辑:程序博客网 时间:2024/05/23 11:52

1.PHP字符串中单引号与双引号的区别?

一般情况下两者是通用的.但双引号内部变量会解析,单引号则不解析.

所以如果内部只有纯字符串的时候,用单引号(速度快),内部有别的东西(如变量)的时候,用双号引更好点.

2.++i和i++哪一个效率高,为什么?

只有在必要时才使用后置操作符
因为前置操作需要做的工作更少,只需要加1后返回加1后的结果即可。而后置操作符则必须先保存操作数原来的值,以便返回未加1之前的值作为操作的结果。对于int对象和指针,编译器可优化掉这项额外工作。但是对于更多的复杂迭代器类型,这种额外工作可能会花费更大代价。因此,养成使用前置操作这个好习惯,就不必担心性能差异的问题。

3.foo()和@foo()之间有什么区别?

@foo()采用错误抑制操作(屏蔽错误输出)

4. isset()和empty()的区别?

isset()是判断变量是否存在(是否定义),empty判断变量是否为空;

手册中对empty()的解释如下:
描述bool empty( mixed var )
如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULLFALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE
手册中对isset()的解释如下:
isset()检测变量是否设置
描述bool isset ( mixed var [, mixed var [, ...]] )
如果 var 存在则返回 TRUE,否则返回 FALSE
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL字节("\0")并不等同于 PHP 的 NULL 常数。

5.html表单中 GET与POST提交方法的区别?

url地址可见和不可见

传输数据有限和不受限制

相对不安全和安全

6.echo(),print(),print_r()的区别?

echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)  
print只能打印出简单类型变量的值(如int,string)  
print_r可以打印出复杂类型变量的值(如数组,对象)  

echo -- 输出一个或者多个字符串 、print --输出一个字符串,print_r -- 打印关于变量的易于理解的信息。

7.








0 0
原创粉丝点击