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 相关文章推荐
PHP5中Cookie与 Session使用详解
Apr 30 PHP
关于JSON以及JSON在PHP中的应用技巧
Nov 27 PHP
php制作unicode解码工具(unicode编码转换器)代码分享
Dec 24 PHP
关于js和php对url编码的处理方法
Mar 04 PHP
详解PHP导入导出CSV文件
Nov 03 PHP
浅析php单例模式
Nov 25 PHP
linux下实现定时执行php脚本
Feb 13 PHP
php实现的mongodb操作类实例
Apr 03 PHP
curl 出现错误的调试方法(必看)
Feb 13 PHP
降低PHP Redis内存占用
Mar 23 PHP
PHP通过文件保存和更新信息的方法分析
Sep 12 PHP
PHP类的自动加载与命名空间用法实例分析
Jun 05 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 6.2使用yum安装LAMP以及phpMyadmin详解
2013/06/17 PHP
php文件操作之小型留言本实例
2015/06/20 PHP
iis6手工创建网站后无法运行php脚本的解决方法
2017/06/08 PHP
PHP实现动态添加XML中数据的方法
2018/03/30 PHP
workerman结合laravel开发在线聊天应用的示例代码
2018/10/30 PHP
Jquery插件 easyUI属性汇总
2011/01/19 Javascript
javascript管中窥豹 形参与实参浅析
2011/12/17 Javascript
jQuery基本过滤选择器使用介绍
2013/04/18 Javascript
利用Keydown事件阻止用户输入实现代码
2014/03/11 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
AngularJS实现按钮提示与点击变色效果
2016/09/07 Javascript
学习Node.js模块机制
2016/10/17 Javascript
分类解析jQuery选择器
2016/11/23 Javascript
js实现图片上传预览原理分析
2017/07/13 Javascript
浅谈Node异步编程的机制
2017/10/18 Javascript
JS实现分页浏览横向图片(类轮播)实例代码
2017/11/06 Javascript
nodejs实现的连接MySQL数据库功能示例
2018/01/25 NodeJs
JavaScript面向对象的程序设计(犯迷糊的小羊)
2018/05/27 Javascript
vue 使用自定义指令实现表单校验的方法
2018/08/28 Javascript
layer.open 子页面弹出层向父页面传输数据的例子
2019/09/26 Javascript
bootstrap实现嵌套模态框的实例代码
2020/01/10 Javascript
Python入门_浅谈数据结构的4种基本类型
2017/05/16 Python
Python 中pandas.read_excel详细介绍
2017/06/23 Python
Python简单实现自动删除目录下空文件夹的方法
2017/08/29 Python
Python3.5基础之变量、数据结构、条件和循环语句、break与continue语句实例详解
2019/04/26 Python
mac安装python3后使用pip和pip3的区别说明
2020/09/01 Python
Tuckernuck官网:经典的美国品质服装、鞋子和配饰
2021/01/11 全球购物
线程的基本概念、线程的基本状态以及状态之间的关系
2012/10/26 面试题
WebSphere面试题:在WebSphere里面如何部署一个应用
2015/08/02 面试题
自荐信格式技巧有哪些呢
2013/11/19 职场文书
环境科学专业个人求职信
2013/12/15 职场文书
21岁生日感言
2014/02/27 职场文书
旅游市场营销方案
2014/03/09 职场文书
个人贷款承诺书
2014/03/28 职场文书
质量承诺书格式范文
2015/04/28 职场文书
盘点2020年适合农村地区创业的项目
2019/10/16 职场文书