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

yipeiwu_com6年前PHP代码库

概述

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采用curl模仿登录人人网发布动态的方法

本文实例讲述了php采用curl模仿登录人人网发布动态的方法。分享给大家供大家参考。具体实现方法如下: 说到php中模仿登录很多人第一时间会想到curl函数系列了,这个没错本例子也是使用...

PHP5.3以上版本安装ZendOptimizer扩展

现在很多PHP程序都需要ZendOptimizer环境,但是ZendOptimizer在PHP5.2之后已经被支持,那怎么办,Zend也不会这么做,原来PHP5.3开始ZendOptim...

PHP删除目录及目录下所有文件的方法详解

函数代码一:删除目录及目录下的所有文件复制代码 代码如下://循环删除目录和文件函数function delDirAndFile( $dirName ){if ( $handle = o...

PHP内置的Math函数效率测试

本文实例分析了PHP内置的Math函数效率问题。分享给大家供大家参考。具体分析如下: 如题所示,对于没有做过大规模运算的朋友来说,可能还不知道,PHP的Math函数运算原来是如此之慢的,...

PHP封装的验证码工具类定义与用法示例

PHP封装的验证码工具类定义与用法示例

本文实例讲述了PHP封装的验证码工具类定义与用法。分享给大家供大家参考,具体如下: 下面分享的是我自己封装的验证码工具类,在平时的项目中会比较经常用到的工具类,目前封装的这个工具类简易版...