函数是PHP如此强大的源泉,但是很多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()
这是一个调试用的函数,能帮助你发现代码中的逻辑错误。要理 解这个函数,还是直接看个例子吧:
# OUTPUT:
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:25]
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#2 recur() called at [C:\htdocs\php_stuff\index.php:8]
#3 iterate() called at [C:\htdocs\php_stuff\index.php:25]
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#2 recur() called at [C:\htdocs\php_stuff\index.php:8]
#3 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#4 recur() called at [C:\htdocs\php_stuff\index.php:8]
#5 iterate() called at [C:\htdocs\php_stuff\index.php:25]
7. metaphone()
这个函数返回单词的metaphone值,相同读音的单词具有相同的metaphone值,也就是说这个函数可以帮你判断两个单词的读音是否 相同。
8. natsort()
natsort()能将一个数组以自然排序法 进行排列,直接看个例子吧:
# Outputs:
# Array
# (
# [0] => 100 apples
# [1] => 110 apples
# [2] => 5 apples
# [3] => 55 apples
# )
# Outputs:
# Array
# (
# [2] => 5 apples
# [3] => 55 apples
# [0] => 100 apples
# [1] => 110 apples
# )
9. levenshtein()
Levenshtein()告诉你两个单词之间的“距离”。它告诉你如果想把一个单词变成另一个单词,需要插入、替换和删除多少字母。
看个例子吧:
echo “Did you mean the ‘$best_match’ category?”;
10. glob()
glob()会让你觉得用 opendir(), readdir()和closedir()来寻找文件非常蠢。
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]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:25]
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#2 recur() called at [C:\htdocs\php_stuff\index.php:8]
#3 iterate() called at [C:\htdocs\php_stuff\index.php:25]
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#2 recur() called at [C:\htdocs\php_stuff\index.php:8]
#3 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#4 recur() called at [C:\htdocs\php_stuff\index.php:8]
#5 iterate() called at [C:\htdocs\php_stuff\index.php:25]
7. metaphone()
这个函数返回单词的metaphone值,相同读音的单词具有相同的metaphone值,也就是说这个函数可以帮你判断两个单词的读音是否 相同。
8. natsort()
natsort()能将一个数组以自然排序法 进行排列,直接看个例子吧:
$items = array( “100 apples”, “5 apples”, “110 apples”, 55 apples” ); // normal sorting: sort($items); print_r($items);
# Outputs:
# Array
# (
# [0] => 100 apples
# [1] => 110 apples
# [2] => 5 apples
# [3] => 55 apples
# )
natsort($items); print_r($items);
# Outputs:
# Array
# (
# [2] => 5 apples
# [3] => 55 apples
# [0] => 100 apples
# [1] => 110 apples
# )
9. levenshtein()
Levenshtein()告诉你两个单词之间的“距离”。它告诉你如果想把一个单词变成另一个单词,需要插入、替换和删除多少字母。
看个例子吧:
$dictionary = array( “php”, “javascript”, “css” ); $word = “japhp”; $best_match = $dictionary[0]; $match_value = levenshtein($dictionary[0], $word); foreach($dictionary as $w) { $value = levenshtein($word, $w); if( $value < $match_value ) { $best_match = $w; $match_value = $value; } }
echo “Did you mean the ‘$best_match’ category?”;
10. glob()
glob()会让你觉得用 opendir(), readdir()和closedir()来寻找文件非常蠢。
foreach (glob(“*.php”) as $file) echo “$file\n”;
发表评论
-
php简单排序之冒泡排序与选择排序
2015-05-20 14:32 2286<?php $arr = array(100, ... -
PHP PDO的简单使用(query(),exec(),prepare(),Transaction,行锁)
2014-12-16 11:30 1515PHP PDO的简单使用(query( ... -
PHP 线程安全与非线程安全版本的区别
2014-12-15 14:48 967从2000年10月20日发布的 ... -
PHP垃圾回收机制-引用计数基本知识
2014-12-15 13:57 390每个php变量存在一个叫"zval"的 ... -
PHP5.4 htmlspecialchars转义中文字符串变空
2014-09-12 10:35 1849PHP5.4 htmlspecialchars转 ... -
php判断客户端浏览器的类型
2013-06-14 22:44 2717php判断客户端浏览器的类型 1、通过 $_SERV ... -
ThinkPHP3.1新特性 动态设置自动验证和自动完成
2013-06-10 22:41 861ThinkPHP3.1新特性 动态设置自动验证和自动完成 ... -
ThinkPHP URL规则、URL伪静态、URL路由
2013-06-09 22:49 3519ThinkPHP 3.1.2 URL规则、URL伪静态、U ... -
php冒泡排序
2012-11-25 13:52 945面试的时候老是碰到排序之类的题目,这里再复习下吧。 &l ... -
php简单例子--打印出99乘法表
2012-11-25 11:39 916php简单例子--打印出99乘法表: <?php ... -
php用get_file_content函数获取黄金原油美指道琼斯等行情
2012-11-24 15:25 1936下面是php用get_file_content函数获取黄金原油 ... -
syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM
2012-09-12 21:15 1070PHP出错:syntax error, unexpected ... -
ecshop2.7.3去版权
2012-09-12 21:03 1109ecshop2.7.3版权修改相关: 1.去掉Powered ... -
php实现多构造器的类
2012-07-23 17:11 1229有时候实例化类时,需要根据构造方法的参数个数进行初始化不用的内 ... -
对PHP构造函数的理解
2012-07-20 20:01 1622做项目的时候遇到了一些错误,最终分析,是php的构造方法在作怪 ... -
XP系统如何配置Apache2.2
2010-02-05 19:44 1397Apache2.2.4 php5.2.1 mysql 配置方法 ...
相关推荐
PHP中10个虽然不常见却非常有用的函数,对于有特殊需求的朋友可以参考下,充分发挥php的优势。
php常见函数集锦,php 函数功能,php常见函数用法,让你快速了解并应用函数,入门不再是难题!
脑动力:PHP函数速查效率手册 source code 张建辉 主编 电子工业出版社 PHP是现在最流行的网站开发技术。PHP提供的内部函数功能强大,解决常见的各种PHP问题。但是PHP函数繁杂,参数众多,造成大家学习和使用的...
17. 函数 18. 类与对象(PHP 4) 19. 类与对象(PHP 5) 20. 异常处理 21. 引用的解释 IV. 安全 22. 简介 23. 总则 24. 以 CGI 模式安装时 25. 以 Apache 模块安装时 26. 文件系统安全 27. 数据库安全 28. 错误报告 ...
PHP常用内置函数 PHP常用函数手册判断一个编程语言的功能强弱,可以从他的库函数入手。一个较好的编程语言,必然有较强的库函数。 I/O函数 Flush 函数描述:flush(); 说明:函数Flush刷新PHP的输出缓存,它尽量将...
php常用函数及解决常见错误,配置文件设置
PHP,是英文超级文本预处理语言Hypertext Preprocessor的缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛的运用。PHP的另一个含义是:菲律宾...
php2go - 使用Golang实现PHP的常见内置函数。已实现约140多项功能。
本文实例讲述了PHP常见数学函数及BC高精度数学函数用法。分享给大家供大家参考,具体如下: 1. bcadd 任意精度数的相加 2. bcsub 任意精度数的减法 3. bcmul 乘法, bcdiv除法 4. bcmod 取余数。 (比%功能更强大)...
函数是PHP如此强大的源泉,但是很多PHP函数并没有得到充分的利用。这里,我们给大家简单介绍10个不常见,但非常有用的函数。
PHP常用符号和函数 其中包含基本符号和一些外面常见的PHP符号
PHP中几种输出函数的区别,个人总结,免费供大家下载
PHP程序常见漏洞分析
PHP中的变量不需要事先声明,它们会在第一次使用时自动创建,它们的类型也不需要指定,它们会根据上下文环境自动确定。从程序员的角度来看,这无疑是一种极其方便的处理方法。很显然,这也是快速开发语言的一个很...
主要介绍了PHP常见数组函数用法,结合实例形式分析了array_merge、array_slice及array_map函数的使用技巧,需要的朋友可以参考下
PHP程序设计-3期(KC016) 3.8.1创建和使用类常见问题:构造函数和析构函数.docx 学习资料 复习资料 教学资源