10个不太为人所知的,但实用的PHP函数

您的评价:
     
较差
 收藏该经验    

PHP拥有非常丰富的内置函数,并且大多数我们是知道的。有许多功能,这些功能不是很出名,但真的非常有用。在这篇文章中,我已经列出并解释了一些鲜为人知的,但真正有用的PHP函数。

php_check_syntax

这是一个非常有用的功能,用于检查一个指定文件的语法。

用法:

1
2
3
4
5
6
7
8
9
<?php
$error_message "";
$filename "./php_script.php";
if(!php_check_syntax($filename, &$error_message)) {
   echo "Errors were found in the file $filename: $error_message";
else {
   echo "The file $filename contained no syntax errors";
}
?>

来源: http://www.php.net/manual/en/function.php-check-syntax.php

highlight_string

该highlight_string()函数可以让我们在Web页面上展示语法高亮的PHP代码。这个函数利用内置的语法高亮功能对给定的PHP代码进行语法着色,并返回结果。

用法:

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

来源: http://php.net/manual/en/function.highlight-string.php

show_source

show_source() 函数的功能与上面介绍的 highlight_file () 相似。可以对一个给定的PHP文件进行语法着色。语法高亮使用HTML标记。运行成功返回TRUE,失败返回FALSE。

用法:

1
2
3
<?php
show_source("php_script.php");
?>

来源: http://www.php.net/manual/en/function.show-source.php

php_strip_whitespace

如前所述,与show_source()函数类似。此函数也是返回特定文件源代码。但是删除了PHP注释和空白的源代码。

用法:

1
2
3
<?php
echo php_strip_whitespace("php_script.php");
?>

来源: http://www.php.net/manual/en/function.php-strip-whitespace.php

__halt_compiler

此函数用于停止编译器的执行。这对于在PHP脚本中嵌入数据很有用,如安装文件。

用法:

1
2
3
4
5
6
7
<?php
$fp fopen(__FILE__'r');
fseek($fp, __COMPILER_HALT_OFFSET__);
var_dump(stream_get_contents($fp));
// the end of the script execution
__halt_compiler();
?>

来源: http://www.php.net/manual/en/function.halt-compiler.php

highlight_file

这是一个非常的PHP函数返回带PHP语法高亮显示特定PHP文件。

用法:

1
2
3
<?php
highlight_file("php_script.php");
?>

来源: http://www.php.net/manual/en/function.highlight-file.php

ignore_user_abort

此功能可用于客户端ABOT脚本。客户端将中止导致脚本停止运行。

用法

1
2
3
<?php
ignore_user_abort();
?>

来源: http://www.php.net/manual/en/function.ignore-user-abort.php

str_word_count

这个函数是用来计算在字符串中找到词的数量。

用法:

1
2
3
<?php
echo str_word_count("Hello How Are You!");
?>

来源: http://php.net/manual/en/function.str-word-count.php

get_defined_vars

这是一个方便的功能,调试时。该函数能够返回一个包含所有定义的变量列表的多维数组。

用法:

1
2
3
<?php
print_r(get_defined_vars());
?>

来源: http://php.net/manual/en/function.get-defined-vars.php

get_browser

这个函数会查找查找browscap.ini文件并返回浏览器的性能。

用法:

1
2
3
4
5
<?php
echo $_SERVER['HTTP_USER_AGENT'];
$browser = get_browser();
print_r($browser);
?>

来源: http://www.php.net/manual/en/function.get-browser.php

10个不太为人所知的,但实用的PHP函数的更多相关文章

  1. Windows 10预装应用太多?一个命令删除!

    Windows 10预装了很多应用软件,虽然有些其实也不难用,但是使用率可能比较低,很多人也不喜欢预装的东西,而且还占空间,那么这些预装的如何彻底清除呢? 其实微软是自带了命令可以执行这样的操作,用它 ...

  2. mysql5.7.10和mysql5.5.39两个版本对于group by函数的处理差异

    原理还是没有搞清楚,在官网上看了一下,看的不是很清楚.一并都记录一下. 问题描述: 存在如下数据结构 sql: 求用户最近更新的那条记录 思路: 按照modify_time排序后按照user_id分组 ...

  3. 【校招面试 之 C/C++】第10题 C++不在构造函数和析构函数中调用虚函数

    1.不要在构造函数中调用虚函数的原因 在概念上,构造函数的工作是为对象进行初始化.在构造函数完成之前,被构造的对象被认为“未完全生成”.当创建某个派生类的对象时,如果在它的基类的构造函数中调用虚函数, ...

  4. 警惕!Python 中少为人知的 10 个安全陷阱!

    作者:Dennis Brinkrolf 译者:豌豆花下猫@Python猫 原题:10 Unknown Security Pitfalls for Python 英文:https://blog.sona ...

  5. 【转】Eclipse快捷键 10个最有用的快捷键

    转载地址:http://www.open-open.com/bbs/view/1320934157953 Eclipse中10个最有用的快捷键组合  一个Eclipse骨灰级开发者总结了他认为最有用但 ...

  6. 转:Eclipse快捷键 10个最有用的快捷键

    Eclipse快捷键 10个最有用的快捷键 Eclipse中10个最有用的快捷键组合  一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代 ...

  7. Eclipse中10个最有用的快捷键组合

    Eclipse中10个最有用的快捷键组合 (转) 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升. ...

  8. Eclipse快捷键 10个最有用的快捷键

    Eclipse中10个最有用的快捷键组合 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升. 1. ...

  9. 10个你必须掌握的Linux超酷VI命令技巧

    大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. 在使用 ...

随机推荐

  1. .net学习之多线程、线程死锁、线程通信 生产者消费者模式、委托的简单使用、GDI(图形设计接口)常用的方法

    1.多线程简单使用(1)进程是不执行代码的,执行代码的是线程,一个进程默认有一个线程(2)线程默认情况下都是前台线程,要所有的前台线程退出以后程序才会退出,进程里默认的线程我们叫做主线程或者叫做UI线 ...

  2. 使用jQuery简单实现产品展示的图片左右滚动功能

    今天要做一个产品展示功能,由于产品比较多,一屏展示不完,所以想要做一个通过点击进行翻页的效果,在网上找了几个都不大好用,最后只能自己动手写了. 效果如下所示: 原理比较简单:将要滚动显示的区域的CSS ...

  3. Xamarin.Android开发实践(十一)

    Xamarin.Android之使用百度地图起始篇 一.前言 如今跨平台开发层出不穷,而对于.NET而言时下最流行的当然还是 Xamarin,不仅仅能够让我们在熟悉的Vs下利用C#开发,在对原生态类库 ...

  4. 【现代程序设计】homework-04

    题目要求: 第四次作业,构造一个方阵将指定单词填入 stage 1:每个单词只出现1次,且八个方向各至少有两个单词 stage 2:矩阵长宽相等 stage 3:方阵的四个角都要参与单词的构建 算法思 ...

  5. OracleDBConsoleorcl是具体管什么的服务(转)

    这个服务是oracle EM的就是oracle企业管理器这个工具可以通过网页的方式监控数据库,对数据库参数等做修改.里面还有oracle本身对于当前系统内存,SQL,参数等的建议.DBA可以根绝这些建 ...

  6. 【maven 报错】maven项目update之后报错One or more constraints have not been satisfied.

    在右键项目Update Project之后报错:One or more constraints have not been satisfied.Spring 4.1 requires Java 1.6 ...

  7. 向hive上传数据时,中文乱码

    sudo -u hive hive -e "use dataplat;load data local inpath '/home/dlht/data/test/2_times.csv' ov ...

  8. java 输入输出流1 FileInputStrem&&FileOutStream

    通过文件输入流读取问价 package unit6; import java.io.FileInputStream; import java.io.FileNotFoundException; imp ...

  9. hdu2955

    #include<bits/stdc++.h> using namespace std; struct Bank { double cau; int money; }bank[]; ]; ...

  10. new一个二维数组

    .定义一个二维数组 char **array1 array1 = new char *[x]; for(i=0;i<x;++i) array1[i] = new char[y]; ...用的时候 ...