background image

这篇文章主要介绍了

php 中的 10 个比较经典的函数,不太常见,可以满足有特殊需求的朋


1. sys_getloadavg()
sys_getloadavt()可以获得系 统负载情况。该函数返回一个包含三个元素的数组,每个元素分
别代表系统再过去的

1、5 和 15 分钟内的平均负载。

与其让服务器因负

 载过高而宕掉,不如在系统负载很高时主动

die

掉一个脚本,

sys_getloadavg()就是用来帮你实现这个功能的。 不过很遗憾,该函数在 windows 下无效。
2. pack()
Pack() 能将 md5()返回的 32 位 16 进制字符串转换为 16 位的二进制字符串,可以节省存储
空间。
3. cal_days_in_month()
cal_days_in_month()能够返回指定月份共有多少天。
4. _()
WordPress 开发者经常能见到这个函数,还有 _e()。这两个函数功能相同,与

gettext

()函数结

合使用,能实现网站的多语言化。具体可参见

PHP 手册的相关部分介绍。

5. get_browser()
在发送页面前先看看用户的浏览器都能做些什么是

 不是挺好?get_browser()能获得用户的

浏览器类型,以及浏览器支持的功能,不过首先你需要一个

php_browscap.ini 文件,用来给

 

函数做参考文件。
要注意,该函数对浏览器功能的判断是基于该类浏览器的一般特性的。例如,如果用户关闭
了浏览器对

 JavaScript 的支持,函数无法得知这一点。但是在判断浏览器类型和 OS 平台方

面,该函数还是很准确的。
6. debug_print_backtrace()
这是一个调试用的函数,能帮助你发现代码中的逻辑错误。要理

 解这个函数,还是直接看

个例子吧:

$a

 = 0;

function

 iterate() {

global

 

$a

;

if

$a

 < 10 )

recur();

echo

 

$a

 . “, “;

}

function

 recur() {

global

 

$a

;

$a

++;

// how did I get here?

echo

 “\n\n\n”;

debug_print_backtrace();

if

$a

 < 10 )

iterate();
}
iterate();
# OUTPUT:
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]