PHP中非常有用却鲜有人知的函数集锦


Posted in PHP onAugust 17, 2019

本文实例总结了PHP中非常有用却鲜有人知的函数。分享给大家供大家参考,具体如下:

PHP里有非常丰富的内置函数,很多我们都用过,但仍有很多的函数我们大部分人都不熟悉,可它们却十分的有用。这篇文章里,我列举了一些鲜为人知但会让你眼睛一亮的PHP函数。

levenshtein()

你有没有经历过需要知道两个单词有多大的不同的时候,这个函数就是来帮你解决这个问题的。它能比较出两个字符串的不同程度。

用法:

$str1 = "carrot";
$str2 = "carrrott";
echo levenshtein($str1, $str2); //Outputs 2

get_defined_vars()

这是一个在debug调试时非常有用的函数。这个函数返回一个多维数组,里面包含了所有定义过的变量。

用法:

print_r(get_defined_vars());

php_check_syntax()

这个函数非常的有用,可以用来检查PHP的语法是否正确。出于技术上的原因,从PHP 5.05开始,这个函数被删除了。

用法:

$error_message = "";
$filename = "./php_script.php";
if(!php_check_syntax($filename, &$error_message)) {
echo "Errors were found in the file $filename: $error_message";
} else {
echo "The file $filename contained no syntax errors";

ignore_user_abort()

这个函数用来拒绝浏览器端用户终止执行脚本的请求。正常情况下客户端的退出会导致服务器端脚本停止运行。

用法:

ignore_user_abort();

highlight_string()

当你想把PHP代码显示到页面上时,highlight_string()函数就会显得非常有用。这个函数会把你提供的PHP代码用内置的PHP语法突出显示定义的颜色高亮显示。这个函数有两个参数,第一个参数是一个字符串,表示这个字符串需要被突出显示。第二个参数如果设置成TRUE,这个函数就会把高亮后的代码当成返回值返回。

用法:

highlight_string('<?php phpinfo(); ?>');

highlight_file

这是一个非常有用的PHP函数,它能返回指定的PHP文件,并按照语法语义用高亮颜色突出显示文件内容。其中的突出显示的代码都是用HTML标记处理过的。

用法:

highlight_file("php_script.php");

php_strip_whitespace

这个函数也跟前面的show_source()函数相似,但它会删除文件里的注释和空格符。

用法:

echo php_strip_whitespace("php_script.php");

get_browser

这个函数会读取browscap.ini文件,返回浏览器兼容信息。

用法:

echo $_SERVER['HTTP_USER_AGENT'];
$browser = get_browser();
print_r($browser);

memory_get_usage(),memory_get_peak_usage(),getrusage()

这些函数用来获取内存和CPU使用情况,memory_get_usage()函数返回内存使用量,memory_get_peak_usage()函数返回内存使用峰值,getrusage()返回CUP使用情况,在调试PHP代码性能时,这些函数会给你提供一些有用信息。但有一点请注意,在这些函数中Window上无效。

用法:

echo "Initial: ".memory_get_usage()." bytes \n";
echo "Peak: ".memory_get_peak_usage()." bytes \n";
$data = getrusage();
echo "User time: ".
($data['ru_utime.tv_sec'] +
$data['ru_utime.tv_usec'] / 1000000);
echo "System time: ".
($data['ru_stime.tv_sec'] +
$data['ru_stime.tv_usec'] / 1000000);

gzcompress(), gzuncompress()

这两个函数用来压缩和解压字符串数据。它们的压缩率能达到50% 左右。另外的函数 gzencode() 和 gzdecode() 也能达到类似结果,但使用了不同的压缩算法。

用法:

$string =
"Lorem ipsum dolor sit amet, consectetur
adipiscing elit. Nunc ut elit id mi ultricies
adipiscing. Nulla facilisi. Praesent pulvinar,
sapien vel feugiat vestibulum, nulla dui pretium orci,
non ultricies elit lacus quis ante. Lorem ipsum dolor
sit amet, consectetur adipiscing elit. Aliquam
pretium ullamcorper urna quis iaculis. Etiam ac massa
sed turpis tempor luctus. Curabitur sed nibh eu elit
mollis congue. Praesent ipsum diam, consectetur vitae
ornare a, aliquam a nunc. In id magna pellentesque
tellus posuere adipiscing. Sed non mi metus, at lacinia
augue. Sed magna nisi, ornare in mollis in, mollis
sed nunc. Etiam at justo in leo congue mollis.
Nullam in neque eget metus hendrerit scelerisque
eu non enim. Ut malesuada lacus eu nulla bibendum
id euismod urna sodales. ";
$compressed = gzcompress($string);
$original = gzuncompress($compressed);

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
VB中的RasEnumConnections函数返回632错误解决方法
Jul 29 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
Nov 22 PHP
php绘制一个矩形的方法
Jan 24 PHP
PHP中foreach()用法汇总
Jul 02 PHP
PHP Smarty模版简单使用方法
Mar 30 PHP
php中Redis的应用--消息传递
Mar 28 PHP
php 生成加密公钥加密私钥实例详解
Jun 16 PHP
Laravel使用消息队列需要注意的一些问题
Dec 13 PHP
PHP通过bypass disable functions执行系统命令的方法汇总
May 02 PHP
php 使用mpdf实现指定字段配置字体样式的方法
Jul 29 PHP
PHP基于session.upload_progress 实现文件上传进度显示功能详解
Aug 09 PHP
解决laravel 表单提交-POST 异常的问题
Oct 15 PHP
PHP中Session ID的实现原理实例分析
Aug 17 #PHP
解决php extension 加载顺序问题
Aug 16 #PHP
深入学习微信网址链接解封的防封原理visit_type
Aug 15 #PHP
Thinkphp5框架实现获取数据库数据到视图的方法
Aug 14 #PHP
php中对象引用和复制实例分析
Aug 14 #PHP
php5对象复制、clone、浅复制与深复制实例详解
Aug 14 #PHP
PHP面向对象程序设计中的self、static、parent关键字用法分析
Aug 14 #PHP
You might like
深入PHP数据缓存的使用说明
2013/05/10 PHP
php中get_object_vars()方法用法实例
2015/02/08 PHP
PHP判断来访是搜索引擎蜘蛛还是普通用户的代码小结
2015/09/14 PHP
php根据日期或时间戳获取星座信息和生肖等信息
2015/10/20 PHP
反射调用private方法实践(php、java)
2015/12/21 PHP
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
js判断两个日期是否相等的方法
2013/09/10 Javascript
jqgrid 编辑添加功能详细解析
2013/11/08 Javascript
js实现精美的图片跟随鼠标效果实例
2015/05/16 Javascript
JavaScript实现自动对页面上敏感词进行屏蔽的方法
2015/07/27 Javascript
react.js CMS 删除功能的实现方法
2017/04/17 Javascript
JS代码实现电脑配置检测功能
2018/03/21 Javascript
vue写一个组件
2018/04/09 Javascript
vue 做移动端微信公众号采坑经验记录
2018/04/26 Javascript
使用jquery模拟a标签的click事件无法实现跳转的解决
2018/12/04 jQuery
Vue请求java服务端并返回数据代码实例
2019/11/28 Javascript
Python下线程之间的共享和释放示例
2015/05/04 Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
2015/05/22 Python
简单谈谈Python中的闭包
2016/11/30 Python
Flask入门之上传文件到服务器的方法示例
2018/07/18 Python
django中使用Celery 布式任务队列过程详解
2019/07/29 Python
Python 中的 global 标识对变量作用域的影响
2019/08/12 Python
500行python代码实现飞机大战
2020/04/24 Python
Nike爱尔兰官方网站:Nike.com (IE)
2018/03/12 全球购物
Monica Vinader官网:英国轻奢珠宝品牌
2020/02/05 全球购物
校园歌手大赛策划书
2014/01/17 职场文书
公司中层干部的自我评价分享
2014/03/01 职场文书
绩效管理实施方案
2014/03/19 职场文书
爱心倡议书范文
2014/05/12 职场文书
地理科学专业自荐信
2014/09/01 职场文书
关于职业道德的心得体会
2016/01/18 职场文书
优质护理服务心得体会
2016/01/22 职场文书
解决goland 导入项目后import里的包报红问题
2021/05/06 Golang
MySql学习笔记之事务隔离级别详解
2021/05/12 MySQL
Vue + iView实现Excel上传功能的完整代码
2021/06/22 Vue.js
Vue组件化(ref,props, mixin,.插件)详解
2022/05/15 Vue.js