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 相关文章推荐
十天学会php(2)
Oct 09 PHP
PHP多线程抓取网页实现代码
Jul 22 PHP
PHP项目开发中最常用的自定义函数整理
Dec 02 PHP
php 使用GD库为页面增加水印示例代码
Mar 24 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
May 21 PHP
关于PHP中字符串与多进制转换函数的实例代码
Nov 03 PHP
PHP实现统计所有字符在字符串中出现次数的方法
Oct 17 PHP
php图片裁剪函数
Oct 31 PHP
PHP实现简易计算器功能
Aug 28 PHP
PHP simplexml_import_dom()函数讲解
Feb 03 PHP
Thinkphp 框架扩展之驱动扩展实例分析
Apr 27 PHP
PHP与Web页面交互操作实例分析
Jun 02 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仿ZOL分页类代码
2008/10/02 PHP
php随机显示图片的简单示例
2014/02/15 PHP
php实现两个数组相加的方法
2015/02/17 PHP
PHP实现上传多图即时显示与即时删除的方法
2017/05/09 PHP
一个高效的JavaScript压缩工具下载集合
2007/03/06 Javascript
jquery 学习笔记一
2010/04/07 Javascript
javascript 当前日期转化为中文的实现代码
2010/05/13 Javascript
ExtJs中简单的登录界面制作方法
2010/08/19 Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
2015/09/10 Javascript
angularjs创建弹出框实现拖动效果
2020/08/25 Javascript
jQuery插件实现带圆点的焦点图片轮播切换
2016/01/18 Javascript
JavaScript判断微信浏览器实例代码
2016/06/13 Javascript
详解JavaScript对象类型
2016/06/16 Javascript
js闭包用法实例详解
2016/12/13 Javascript
AngularJS双向绑定和依赖反转实例详解
2017/04/15 Javascript
bootstrap multiselect 多选功能实现方法
2017/06/05 Javascript
CSS3结合jQuery实现动画效果及回调函数的实例
2017/12/27 jQuery
Vue中插入HTML代码的方法
2018/09/21 Javascript
elementUI select组件默认选中效果实现的方法
2019/03/25 Javascript
使用Node.js写一个代码生成器的方法步骤
2019/05/10 Javascript
jquery+css实现Tab栏切换的代码实例
2019/05/14 jQuery
在vue中封装的弹窗组件使用队列模式实现方法
2020/07/23 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
python通过自定义isnumber函数判断字符串是否为数字的方法
2015/04/23 Python
python删除指定类型(或非指定)的文件实例详解
2015/07/06 Python
python正则表达式面试题解答
2020/04/28 Python
详解python中list的使用
2019/03/15 Python
Django 过滤器汇总及自定义过滤器使用详解
2019/07/19 Python
Python文件时间操作步骤代码详解
2020/04/13 Python
研究生自我鉴定范文
2013/10/30 职场文书
自我鉴定范文
2013/11/10 职场文书
人事专员工作职责
2014/02/22 职场文书
老师对学生的评语
2014/04/18 职场文书
篝火晚会策划方案
2014/05/16 职场文书
2014年外联部工作总结
2014/11/17 职场文书
MySQL时间盲注的五种延时方法实现
2021/05/18 MySQL