PHP有许多内置函数,其中大多数函数都被程序员广泛使用。但也有一些函数隐藏在角落,本文将向大家介绍7个鲜为人知,但用处非常大的函数。 没用过的程序员不妨过来看看。

  1.highlight_string()

  当需要在一个网站中展示PHP代码时,highlight_string()函数就变的非常有用了。该函数通过使用PHP语法高亮程序中定义的颜色,输出或返回给定的PHP代码的语法高亮版本。

  示例:

1
2
3
<?php
highlight_string('<?php phpinfo(); ?>');
?>

  2.str_word_count()

  该函数必须要传递一个参数,根据参数类型返回单词的个数。如下面的所示:

1
2
3
4
<?php
$str = "How many words do I have?";
echo str_word_count($str); //Outputs 6
?>

  3.levenshtein()

  该函数主要返回两个字符串之间的Levenshtein距离。Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。该函数对查找用户所提交的错别字非常有用。

  示例:

1
2
3
4
5
<?php
$str1 = "carrot";
$str2 = "carrrott";
echo levenshtein($str1, $str2); //Outputs 2
?>

  4.get_defined_vars()

  该函数返回一个包含所有已定义变量列表的多维数组,这些变量包括环境变量、服务器变量和用户定义的变量。

  示例:

1
print_r(get_defined_vars());

  5.escapeshellcmd()

  该函数用来避开字符串中的特殊符号,可以防止使用者耍花招来破解服务器系统。可以用本函数搭配exec() 或是system() 二个函数,这样可以减少网上使用者的恶意破坏行为。

  示例:

1
2
3
4
5
<?php
$command = './configure '.$_POST['configure_options'];
$escaped_command = escapeshellcmd($command);
system($escaped_command);
?>

  6.checkdate()

  本函数可以用来检查日期是否有效,例如年为0至32767年、月为1至12月、日则随着月份及闰年变化。

  示例:

1
2
3
4
5
6
7
<?php
var_dump(checkdate(12, 31, 2000));
var_dump(checkdate(2, 29, 2001));
//Output
//bool(true)
//bool(false)
?>

  7.php_strip_whitespace()

  该函数可以返回已删除PHP注释以及空白字符的源代码文件,这对实际代码数量和注释数量的对比很有用。

  示例:

1
2
3
4
5
6
7
8
9
<?php
// PHP comment here
/*
 * Another PHP comment
 */
echo        php_strip_whitespace(__FILE__);
// Newlines are considered whitespace, and are removed too:
do_nothing();
?>

  输出结果:

1
2
<?php
 echo php_strip_whitespace(__FILE__); do_nothing(); ?>

  文章来自:Cats Who Code

7个鲜为人知却超实用的PHP函数的更多相关文章

  1. 7个鲜为人知却超实用的PHP函数--转(柒捌玖零)

    PHP有许多内置函数,其中大多数函数都被程序员广泛使用.但也有一些函数隐藏在角落,本文将向大家介绍7个鲜为人知,但用处非常大的函数. 没用过的程序员不妨过来看看. 1.highlight_string ...

  2. 转:7个鲜为人知却超实用的PHP函数

    PHP have lots of built-in functions, and most developers know many of them. But a few functions are ...

  3. C++编程技术之 异常处理(上)

    增强错误恢复能力是提高代码健壮性的最有力途径之一 之所以平时编写代码的时候不愿意去写错误处理,主要是由于这项工作及其无聊并可能导致代码膨胀,导致的结果就是本来就比较复杂的程序变得更加复杂.当然了,前面 ...

  4. 超实用PHP函数总结整理

    超实用PHP函数总结整理 2014-12-06    分类:WEB开发.编程开发.首页精华暂无人评论     来源:月光光博客 分享到:更多8 1.PHP加密解密 PHP加密和解密函数可以用来加密一些 ...

  5. PHP培训教程 PHP里10个鲜为人知但却非常有用的函数

    php里有非常丰富的内置函数,很多我们都用过,但仍有很多的函数我们大部分人都不熟悉,可它们却十分的有用.这篇文章里,兄弟连小编列举了一些鲜为人知但会让你眼睛一亮的PHP函数. levenshtein( ...

  6. 【转】超实用PHP函数总结整理

    原文链接:http://www.codeceo.com/article/php-function.html 1.PHP加密解密 PHP加密和解密函数可以用来加密一些有用的字符串存放在数据库里,并且通过 ...

  7. 10个鲜为人知的WordPress函数

    WordPress功能强大,非常适合开发者使用.说到 WordPress,那么,我们不得不说他的钩子函数.今天,要为大家推荐10个WordPress函数.大多数,都是我们常用的功能,不过,经常不知道如 ...

  8. PHP里10个鲜为人知但却非常有用的函数

    levenshtein() 你有没有经历过需要知道两个单词有多大的不同的时候,这个函数就是来帮你解决这个问题的.它能比较出两个字符串的不同程度. 用法: <?php $str1 = " ...

  9. php函数超实用

    DateTime DateTime::addDateTime::diffDateTime::formatDateTime::modifyDateTime::sub... * DateInterval ...

随机推荐

  1. Windows Phone使用sliverlight toolkit实现页面切换动画效果

    使用应用时,好多app在页面切换的时候都有一个动画效果,感觉很炫,也大大增加了用户体验,怎么实现呢? 界面的切换,可以用Windows Phone Toolkit中的TransitionService ...

  2. JS判断设备终端(PC,iPad,iPhone,android,winPhone)和浏览器

    JS判断设备终端(PC,iPad,iPhone,android,winPhone)和浏览器 var ua = navigator.userAgent; var browser = {}, weixin ...

  3. Android源代码编译——下载

    下了好久的源代码,真真是慢哈.真希望国内有公司能够把镜像开放出来. 不多说,首先是系统环境,我的系统是Ubuntu 64位系统(14.04), 版本应该没什么. 需要的库 Git: 没话说必须, su ...

  4. Linked List Sorting (链表)

    Linked List Sorting (链表)   A linked list consists of a series of structures, which are not necessari ...

  5. CentOS 下 Codeblocks 的 安装 + 汉化 以及 基本使用介绍

    Codeblocks 安装 注:在root用户下运行下列命令 1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可 yum install gcc yu ...

  6. seo 优化 仅针对 来拍呀www.laipaiya.com(一)

    加入百度统计代码:http://tongji.baidu.com/ 查看百度统计优化分析->seo建议 对每个页面的meta标签做修改 首页 title :来拍呀 - | 折扣好房你就来拍呀 k ...

  7. 解决rhel相关系统下yum找不到安装包的解决方法

    最近重新安装了Linux,用的版本是CentOS 5.1.但老是出现很多包找不到的情况. [root@toughhou /]# yum install rlwrap Loaded plugins: f ...

  8. IOS6开发环境环境配置

    IOS6开发环境环境配置http://www.wizzer.cn/?p=2438http://diybbs.zol.com.cn/1/34037_629.htmlhttp://diybbs.zol.c ...

  9. 【发问】代表ODBC、Ibatis 发问 Hibernate、Linq、Entity、JPA

    分页: 多表关联查询: 多表操作 临时表: 存储过程式长语句 : Hibernate与iBATIS的比较 博客分类: db iBATISHibernateSQL数据结构ORM  1.出身 hibern ...

  10. objective-C 中两种实现动画的方法(转)

     转发自:http://wayne173.iteye.com/blog/1250232 第一种方法: [UIView beginAnimations:@"Curl"context: ...