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 轻松解析 XML
Dec 04 PHP
php 无法载入mysql扩展
Mar 12 PHP
探讨PHP删除文件夹的三种方法
Jun 09 PHP
如何给phpcms v9增加类似于phpcms 2008中的关键词表
Jul 01 PHP
服务器上配置PHP运行环境教程
Feb 12 PHP
微信公众平台开发之天气预报功能
Aug 31 PHP
php验证码的制作思路和实现方法
Nov 12 PHP
浅谈php中fopen不能创建中文文件名文件的问题
Feb 06 PHP
Laravel中如何增加自定义全局函数详解
May 09 PHP
PHP实现的用户注册表单验证功能简单示例
Feb 25 PHP
解决windows上php xdebug 无法调试的问题
Feb 19 PHP
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
Apr 01 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
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
2012/06/17 PHP
ThinkPHP之N方法实例详解
2014/06/20 PHP
Jquery CheckBox全选方法代码附js checkbox全选反选代码
2010/06/09 Javascript
Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
2010/12/06 Javascript
jquery创建一个ajax关键词数据搜索实现思路
2013/02/26 Javascript
jQuery建立一个按字母顺序排列的友好页面索引(兼容IE6/7/8)
2013/02/26 Javascript
javascript中this做事件参数相关问题解答
2013/03/17 Javascript
分享9个最好用的JavaScript开发工具和代码编辑器
2015/03/24 Javascript
js电话号码验证方法
2015/09/28 Javascript
基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
2016/08/29 Javascript
Javascript数组中push方法用法分析
2016/10/31 Javascript
javascript实现将数字转成千分位的方法小结【5种方式】
2016/12/11 Javascript
浅析Jquery操作select
2016/12/13 Javascript
如何解决jQuery EasyUI 已打开Tab重新加载问题
2016/12/19 Javascript
javascript笔记之匿名函数和闭包
2017/02/06 Javascript
w3c编程挑战_初级脚本算法实战篇
2017/06/23 Javascript
详解如何实现Element树形控件Tree在懒加载模式下的动态更新
2019/04/25 Javascript
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
Python内置函数——__import__ 的使用方法
2017/11/24 Python
解决Pycharm下面出现No R interpreter defined的问题
2018/10/29 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
python GUI库图形界面开发之PyQt5控件QTableWidget详细使用方法与属性
2020/02/25 Python
python实现QQ邮箱发送邮件
2020/03/06 Python
python爬虫开发之selenium模块详细使用方法与实例全解
2020/03/09 Python
Python第三方库安装缓慢的解决方法
2021/02/06 Python
CSS实现fullpage.js全屏滚动效果的示例代码
2021/03/24 HTML / CSS
内衣营销方案
2014/03/15 职场文书
田径运动会开幕式及主持词
2014/03/28 职场文书
贸易跟单员英文求职信
2014/04/19 职场文书
老兵退伍标语
2014/10/07 职场文书
民事诉讼代理委托书
2014/10/08 职场文书
中秋联欢会主持词
2015/07/04 职场文书
2015年度个人工作总结报告
2015/10/24 职场文书
初三语文教学反思
2016/03/03 职场文书
导游词之丽江普济寺
2019/10/22 职场文书
LeetCode189轮转数组python示例
2022/08/05 Python