7个鲜为人知却非常实用的PHP函数


Posted in PHP onJuly 01, 2015

概述

PHP有着众多的内置函数,其中大多数函数都被开发者广发使用。但也有一些同样有用却被遗忘在角落,本文将介绍7个鲜为人知功能却非常酷的函数。

highlight_string()

当需要在网页中展示PHP代码时,highlight_string()函数就显得非常有用。该函数通过PHP内置定义的颜色,返回函数中代码的高亮显示版本。

<?php

    highlight_string('<?php echo "hello world" ; ?>');

    echo highlight_string('<?php echo "hello world" ; ?>',true);

?>

str_word_count()

这个函数可以方便的将输入的字符串参数中的单词个数返回。

<?php

    $str = "hello world";

    echo str_word_count($str);  //输出 2

?>

levenshtein()

该函数可以方便的返回两个参数之间的levenshtein(编辑距离)。曾经遇到过一个需求,用户在编辑身份证的时候,限制用户只能修改4位数字,使用的就是这个函数。

<?php

    $idcard='230406198506206797';

    $newIdcard='230406198506207798';

    echo levenshtein($idcard,$newIdcard);  //输出 2

?>

get_defined_vars()

这个函数在调试程序的时候非常有用,它会返回包含所有已定义变量的数组,其中包含环境、系统以及用户自定义变量。

<?php

    var_dump(get_defined_vars());

?>

escapeshellcmd()
该函数用来跳过字符串中的特殊符号,防止恶意用户耍花招破解服务器系统。可以搭配exec()与system()函数使用。

<?php

$command = './configure '.$_POST['configure_options'];

$escaped_command = escapeshellcmd($command);

system($escaped_command);

?>

checkdate()

该函数可以用来检测日期参数的有效性。它可以验证输入的每一个参数的合法性。

<?php

var_dump(checkdate(12, 31, 2000));

var_dump(checkdate(2, 29, 2001));

//输出

//bool(true)

//bool(false)

?>

php_strip_whitespace()

该函数会返回删除了注释与空格后的PHP源码。这对实际代码数量和注释数量的对比很有用。

<?php

// 注释1

/*

 * 注释2

 */

echo php_strip_whitespace(__FILE__);

do_nothing();

?>
PHP 相关文章推荐
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-3 代码组织和重用2
Jul 03 PHP
PHP超级全局变量数组小结
Oct 04 PHP
php实现的获取网站备案信息查询代码(360)
Sep 23 PHP
php float不四舍五入截取浮点型字符串方法总结
Oct 28 PHP
PHP中file_get_contents高?用法实例
Sep 24 PHP
PHP使用feof()函数读文件的方法
Nov 07 PHP
PHP+Apache+Mysql环境搭建教程
Aug 01 PHP
php中static和const关键字用法分析
Dec 07 PHP
thinkPHP框架整合tcpdf插件操作示例
Aug 07 PHP
PHP获取ttf格式文件字体名的方法示例
Mar 06 PHP
Yii Framework框架开发微信公众平台示例
Apr 26 PHP
如何利用PHP实现上传图片功能详解
Sep 24 PHP
什么是PEAR?什么是PECL?PHP中两个容易混淆的概念解释
Jul 01 #PHP
php实现的网络相册图片防盗链完美破解方法
Jul 01 #PHP
PHP根据图片色界在不同位置加水印的方法
Jul 01 #PHP
php检测图片主要颜色的方法
Jul 01 #PHP
PHP函数实现从一个文本字符串中提取关键字的方法
Jul 01 #PHP
浅谈php提交form表单
Jul 01 #PHP
用PHP代码给图片加水印
Jul 01 #PHP
You might like
Centos PHP 扩展Xchche的安装教程
2016/07/09 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
PHP如何获取当前主机、域名、网址、路径、端口等参数
2017/06/09 PHP
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
2009/11/12 Javascript
JavaScript 高级篇之函数 (四)
2012/04/07 Javascript
jQuery 处理页面的事件详解
2015/01/20 Javascript
JavaScript中指定函数名称的相关方法
2015/06/04 Javascript
jQuery插件zepto.js简单实现tab切换
2015/06/16 Javascript
jquery拼接ajax 的json和字符串拼接的方法
2017/03/11 Javascript
Vue实现购物车功能
2017/04/27 Javascript
利用PM2部署node.js项目的方法教程
2017/05/10 Javascript
利用vueJs实现图片轮播实例代码
2017/06/03 Javascript
vue单页应用加百度统计代码(亲测有效)
2018/01/31 Javascript
vue.js实现的经典计算器/科学计算器功能示例
2018/07/11 Javascript
vue中各种通信传值方式总结
2019/02/14 Javascript
JavaScript实现轮播图片完整代码
2020/03/07 Javascript
[06:09]辉夜杯主赛事开幕式
2015/12/25 DOTA
[08:08]DOTA2-DPC中国联赛2月28日Recap集锦
2021/03/11 DOTA
python中的reduce内建函数使用方法指南
2014/08/31 Python
Python的Twisted框架上手前所必须了解的异步编程思想
2016/05/25 Python
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
python获取微信企业号打卡数据并生成windows计划任务
2019/04/30 Python
Python模块相关知识点小结
2020/03/09 Python
python实现贪吃蛇游戏源码
2020/03/21 Python
Python json读写方式和字典相互转化
2020/04/18 Python
一份软件工程师的面试试题
2016/02/01 面试题
学期自我鉴定
2013/11/04 职场文书
机械化及自动化毕业生的自我评价分享
2013/11/06 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
试用期员工工作自我评价
2014/09/10 职场文书
无财产无子女离婚协议书范文
2014/09/14 职场文书
2014年终个人总结报告
2015/03/09 职场文书
学校捐款活动总结
2015/05/09 职场文书
民事撤诉申请书范本
2015/05/18 职场文书
党员干部学习三严三实心得体会
2016/01/05 职场文书
手把手教你实现PyTorch的MNIST数据集
2021/06/28 Python