php易忽略的问题

PHP语法容易忽略的问题小结

星期四, 十一月 1st, 2012 | linux, php | 没有评论

之前收藏的一个php常见的问题小结,挺不错的,在此摘录下.

1.PHP变量区分大小写,定义的函数、类名以及系统内置的函数和关键字不区分大写。

2.PHP结束标记“?>”前的那条语句的分号可省略,但不推荐。

3.注释:

      <? echo $a; #print $a ?><h1>something</h1>
     遇到php结束符号则#注释自动终结
 
     类似的:/*注释也是遇到php结束符号则注释自动终结
 
   上面的语法合法,但不推荐使用。
 
     /*ddddddd /*ffffff */  dddd */ 
    这样的注释嵌套导致出错,因为PHP视图执行“ffffff”。

4.类名stdClass被保留

5.define函数定义常量,常量引用时不加$

6.函数名和关键字不区分大小写

7.浮点数的值仅仅是数的近似表示,尽量避免假定浮点数是完全精确的,利用“==”比较浮点数时,通常将其移动若干位小数位置后比较。

     if( int($a * 1000) == int($b * 1000)).....//后移三位小数点并转换为整形后比较

8.

     $path='c:\\windows';echo  $path;打印:"c:\\windows"

9.资源(或称为句柄)实际上是整数,使用资源的好处是它会自动完成内存的管理,但最后一个对资源的引用销毁时,常见该资源的扩展被调用来为该资源释放所有内存,关闭所有连接等。函数中容易发现自动清空资源的好处,将资源指派给一个局部变量,当函数调用结束时,变量的值自动被php回收。例如:

             function   func1(){
 
                   $res = database_connect();database_query($res);
 
                   //退出函数时连接自动关闭
 
             }

尽管可用上面的方法,还是推荐显式的销毁资源。

10.可变变量(即变量的变量)

        $foo = 'abc';
        $$foo = 'xyz';//$abc的值 "xyz"

11.php中的变量引用:就是如何创建变量的别名。(用C中的指针理解要容易些)

         $a = & $b;    //$a和$b正向相同的内存区域。其一改变另一也改变,销毁其一不影响另一。
 
        函数利用引用可以传递参数(避免赋值大的字符串或数组)。例如:
 
       function  &ret_ref(){
                $var="php";//$var是大树组或者的字符串时效率比较高
                return $var;
       }
       $v = & ret_ref();

12.php中的局部变量只存在与函数中,循环、分支和块中的变量不是局部变量。函数为定义的变量为全局变量,函数内要访问全局变量必须声明为global,然后再使用(也可以使用笨方法,就是全局数组$GLOBALS)。

13.php使用“引用计数”和“写时复制”技术。

› Continue reading

Tags: ,

Search

文章分类

Links

Meta