PHP知识点

来源:互联网 发布:天津工业大学网络教学 编辑:程序博客网 时间:2024/06/02 19:42

1.PHP获取客户端与服务端的IP及相应的主机名

 客户端IP获取: $_SEVER['REMOTE_ADDR']

 服务端IP获取: $_SEVER['SERVER_ADDR']

获取主机名方式: php_uname('n')

2. 在PHP中count函数的用法

count计算数组,可以有两个参数

$arr = array('a' => array('x' , 'y'))

count($arr, 1) ;//应该等于3,递归计算value个数

特别注意的是count(null) 应该是0,其他情况:count("asss")应该是1

假设某类是实现了Countable接口的话,在调动count(newTest())返回的是该类的实现count方法的返回值

3.针对error_reporting函数

error_reporting(2047);//2047指的是E_ALL,等同于error_reporting(2047);

error_reporting(E_ALL ^E_NOTICE) 等于error_reporting(E_ALL &~E_NOTICE)

1 E_ERROR
2 E_WARNING
4 E_PARSE
8 E_NOTICE
16 E_CORE_ERROR
32 E_CORE_WARNING
64 E_COMPILE_ERROR
128 E_COMPILE_WARNING
256 E_USER_ERROR
512 E_USER_WARNING
1024 E_USER_NOTICE
2047 E_ALL
2048 E_STRICT

4.PHP中的输出函数有哪些,主要区别是什么?

echo 它是一种语言结构, 没有返回值

print 它是函数,它的返回值是整数

print_r它是函数,它的返回值是bool类型,print_r函数的第二个参数加上true指的是把print_r函数的返回值也输出,不加true指的是只输出print_r($arr)中的$arr

5.打开php_ini中的Safe_mode选项,会影响哪些函数,例6个说明

打开后,会开始安全模式,导致跟文件权限有关的都有影响

如 fopen , move_upload_file, unlink , mkdir, copy, touch,shell_exec这个函数在安全模式下不能运行

6.PHP解决多线程读取同时读写同一个文件,参考下面

functionfileWrite()                                                      

{

   $fp = fopen('aa.txt','a');

   if(flock($fp,LOCK_EX)) //对文件进行上锁

   {

     fwrite($fp, "Write somethinghere\n");

      flock($fp,LOCK_UN);

   }

}

function fileRead($filename,$length)

{

    $fp= fopen($filename,'r');   //追加方式打开
    if(flock($fp, LOCK_SH)){      //加读锁
        $result= fgets($fp,$length); 
        flock($fp,LOCK_UN);       //解锁
    }
    fclose($fp);
    return$result;

}

}


 

0 0