搜尋
首頁後端開發php教程不常见却非常有用的PHP函数

一个工作多年的php老程序员的总结,在php自带的函数库里面有很多不常见却有非常实用的函数,下面就分享10个不常见却非常有用的php函数。

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()

这是一个调试用的函数,能帮助你发现代码中的逻辑错误。要理解这个函数,还是直接看个例子吧:

<p><?php</p>$a=0;<br />function iterate(){<br />	global $a;<br />	if($a<10){<br />		recur();<br />	}<br />	echo $a.", ";<br />} <br />function recur(){<br />	global $a;<br />	$a++;<br />	echo "\n\n\n";<br />	debug_print_backtrace();<br />	if($a<10){<br />		iterate();<br />	}<br />} <br /><p>iterate();</p>

你知道这个例子里的程序在干嘛吗?其实我也没看明白,不过这不重要!重要的是他将输出如下内容:

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()能将一个数组以自然排序法进行排列,直接看个例子吧:

<p><?php</p>$items=array('100 apples','5 apples','110 apples','55 apples');<br />sort($items);<br />print_r($items);<br />natsort($items);<br /><p>print_r($items);</p>

输出结果如下:

Array( 

 [0] => 100 apples 
 [1] => 110 apples 
 [2] => 5 apples 
 [3] => 55 apples 
)
Array( 
 [2] => 5 apples 
 [3] => 55 apples 
 [0] => 100 apples 
 [1] => 110 apples 

)

9.levenshtein()

Levenshtein()告诉你两个单词之间的“距离”。它告诉你如果想把一个单词变成另一个单词,需要插入、替换和删除多少字母。 看个例子吧:

<p><?php</p>$dictionary=array("php","javascript","css");<br />$word="japhp";<br />$best_match=$dictionary[0];<br />$match_value=levenshtein($dictionary[0], $word);<br />foreach($dictionary as $w){<br />	$value=levenshtein($word,$w);<br />	if($value<$match_value){ <br />		$best_match=$w;<br />		$match_value=$value;<br />	}<br />}<br /><p>echo "Did you mean the '",$best_match,"' category?";</p>

10.glob()

glob()会让你觉得用opendir(), readdir()和closedir()来寻找文件非常蠢。这个函数返回匹配指定模式的文件名或目录。

该函数返回一个包含有匹配文件 / 目录的数组。如果出错返回 false。

<p><?php</p>foreach(glob("*.php") as $file){<br />	echo "$file\n";<br />}


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
php函数返回值可以有几个php函数返回值可以有几个Apr 26, 2022 pm 08:14 PM

php函数返回值只能有一个。在PHP中,函数返回值使用return语句定义,语法“return 返回值;”。return语句只能返回一个参数,即函数只能有一个返回值;如果要返回多个值的话,就需在函数中定义一个数组,将返回值存储在数组中返回。

php传参都是字符串吗php传参都是字符串吗Dec 15, 2022 pm 03:07 PM

不是,php传参可以是字符串、数字、布尔值、数组等。从PHP5.6版本开始支持传递数组参数,函数的形式参数可使用“…”来表示函数可接受一个可变数量的参数,而可变参数将会被当作一个数组传递给函数,语法“function 函数名(...$arr){//执行代码}”。

详细介绍PHP函数和方法的区别详细介绍PHP函数和方法的区别Mar 24, 2023 am 09:45 AM

随着互联网技术的发展,PHP已经成为了非常流行的开发语言之一。身为一个PHP开发者,了解PHP函数和方法的区别是非常重要的,因为它们在编写代码的时候都是必不可少的。在本文中,我们将详细介绍PHP函数和方法的区别。

php函数的参数赋值有哪几种php函数的参数赋值有哪几种Apr 24, 2022 pm 12:10 PM

php函数的参数赋值有3种:1、值传递赋值,将实参的值复制一份再赋值给函数的形参;2、引用传递赋值,把实参的内存地址复制一份,然后传递给函数的形参,进而将实参值赋值给形参;3、直接给函数的参数指定默认值,语法“函数名(参数变量='值')”。

PHP函数的命名规范及规则PHP函数的命名规范及规则May 19, 2023 am 08:14 AM

PHP作为一种非常流行的脚本语言,有着强大的函数库支持,其函数的命名规范和规则对于开发效率和代码可读性都有着重要的影响。本文将介绍PHP函数的命名规范及规则。一、命名风格在PHP中,函数名需要严格符合命名规范和规则,规范主要包括两个方面:命名风格和命名规则。1.下划线命名法下划线命名法是PHP函数命名最常用的方式,也是官方推荐的一种方式。遵循这种方式的函数名

PHP函数的迭代器函数PHP函数的迭代器函数May 19, 2023 am 08:11 AM

随着现代编程语言的不断发展,编程的效率和功能性也不断提高,其中PHP作为一种广泛使用的服务器端脚本语言,也在不断地更新和完善其自身的功能列表。PHP函数的迭代器函数就是其中的一种新功能,为PHP程序员提供了更加灵活和高效的编程方式。在本文中,我们将详细介绍PHP函数的迭代器函数的相关知识。什么是PHP函数的迭代器函数?在介绍PHP函数的迭代器函数之前,我们首

PHP函数的MSSQL函数PHP函数的MSSQL函数May 18, 2023 pm 11:31 PM

PHP是一种开源的服务器端脚本语言,通常用于开发Web应用程序。PHP具有易学易用、灵活、性能优异等优点,因此在Web开发领域得到了广泛应用。而MSSQL作为一种流行的关系型数据库管理系统,也被PHP所支持。在PHP中实现MSSQL数据库操作,需要使用MSSQL函数。MSSQL函数可用于连接数据库、执行查询语句、读写数据库中的数据等操作。接下来,将详细介绍一

php中递归函数是啥意思php中递归函数是啥意思May 31, 2022 pm 12:01 PM

在php中,递归函数指的是自调用函数,也就是函数在函数体内部直接或间接地自己调用自己;使用递归函数时,需要在函数体中附加一个判断条件,以判断是否需要继续执行递归调用,当条件满足时会终止函数的递归调用。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),