文档章节

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

chinaweilu
 chinaweilu
发布于 2013/12/11 09:44
字数 652
阅读 216
收藏 27

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

1.highlight_string() 

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

示例:

<?php
highlight_string('<?php phpinfo(); ?>');
?>

2.str_word_count() 

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

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

3.levenshtein()

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

示例:

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

4.get_defined_vars()

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

示例:

print_r(get_defined_vars());

5.escapeshellcmd()

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

示例:

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

6.checkdate()

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

示例:

<?php
var_dump(checkdate(12, 31, 2000));
var_dump(checkdate(2, 29, 2001));
//Output
//bool(true)
//bool(false)
?>

7.php_strip_whitespace()

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

示例:

<?php
// PHP comment here
/*
 * Another PHP comment
 */
echo        php_strip_whitespace(__FILE__);
// Newlines are considered whitespace, and are removed too:
do_nothing();
?>

输出结果:

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


© 著作权归作者所有

共有 人打赏支持
chinaweilu
粉丝 1
博文 5
码字总数 2035
作品 0
朝阳
程序员
私信 提问
一言不合就学习:PHP优秀学习文章资料汇总整理

发现一个不错的网站,DevStore,移动互联网企业运营解决方案整合平台,产品前期-设计阶段-开发测试-推广阶段-运维运营,各个阶段都有涉及。 下面整理一些针对包括程序员、运营、设计师等在内...

FrancisSoung
2016/08/25
0
0
PHP里10个鲜为人知但却非常有用的函数

levenshtein() 你有没有经历过需要知道两个单词有多大的不同的时候,这个函数就是来帮你解决这个问题的。它能比较出两个字符串的不同程度。 Source: http://php.net/manual/en/function.leve...

renew
2014/09/11
0
0
PHP实用函数手册:stream_context_create()模拟POST/GET

PHP实用函数手册:streamcontextcreate()模拟POST/GET 有时候,我们需要在服务器端模拟 POST/GET 等请求,也就是在 PHP 程序中去实现模拟,改怎么做到呢?或者说,在 PHP 程序里,给你一个数...

开元中国2015
2015/06/05
79
0
鲜为人知的 Python 语法

本文由伯乐在线 -伯乐在线读者 翻译。未经许可,禁止转载! 英文出处: medium。欢迎加入 翻译组。 所有人(好吧,不是所有人)都知道 Python 是一门用途广泛、易读、而且容易入门的编程语言...

伯乐在线
08/03
0
0
10 件在 PHP 7 中不要做的事情

1. 不要使用函数 这一天终于来了,从此你不仅仅“不应该”使用函数。PHP 7 已经把它们从核心中全部移除了,也就是说你需要迁移到好得多的函数,或者更灵活的 PDO 实现。 2. 不要编写垃圾代码...

两味真火
2016/09/18
14.2K
52

没有更多内容

加载失败,请刷新页面

加载更多

Confluence 6 修改导航显示选项

选择 子页面(Child pages)来在边栏中查看当前页面的子页面。 选择 页面树(Page tree)来查看整个空间的页面树,扩展当前的页面。 你也可以选择是否完全隐藏导航显示选项或者添加你希望可见...

honeymose
20分钟前
0
0
Ubuntu18.04 安装MySQL

1.安装MySQL sudo apt-get install mysql-server 2.配置MySQL sudo mysql_secure_installation 3.设置MySQL非root用户 设置原因:配置过程为系统root权限,在构建MySQL连接时出现错误:ERROR...

AI_SKI
今天
3
0
3.6 rc脚本(start方法) 3.7 rc脚本(stop和status方法) 3.8 rc脚本(以daemon方式启动)

3.6-3.7 rc脚本(start、stop和status方法) #!/usr/bin/env python# -*- coding: utf-8 -*-# [@Version](https://my.oschina.net/u/931210) : python 2.7# [@Time](https://my.oschina.......

隐匿的蚂蚁
今天
3
0
Cnn学习相关博客

CNN卷积神经网络原理讲解+图片识别应用(附源码) 笨方法学习CNN图像识别系列 深度学习图像识别项目(中):Keras和卷积神经网络(CNN) 卷积神经网络模型部署到移动设备 使用CNN神经网络进行...

-九天-
昨天
5
0
flutter 底部输入框 聊天输入框 Flexible

想在页面底部放个输入框,结果键盘一直遮住了,原来是布局问题 Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("评论"), ...

大灰狼wow
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部