10个鲜为人知但非常有用的PHP函数

不言
不言 原创
2023-03-24 07:56:01 818浏览

这篇文章介绍的内容是关于10个鲜为人知但非常有用的PHP函数,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

1.来文史特距离(字符串相似性)


<?php
$str1 = "aaa";
$str2 = "aaab";
echo levenshtein($str1, $str2); //输出2
?>



它可以计算出 字符串str1和字符串str2 之间相差几个字母。这个是php比较特色的函数,因为你用其他语言很可能要自己去实现来文史特距离的矩阵元算。

2.返回所定义的所有变量的数组


<?php
print_r(get_defined_vars());
?>


这是一个非常有用的功能,当你想要调试你的代码,同时代码比较乱忘了定义了哪些变量。它会返回所定义的所有变量的数组。放在最后一句哦~~~

3.检查你的PHP代码语法函数


<?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";
  }
?>


php_check_syntax 也就是这个函数。不过在php5中被弃用了,否则用php开发一个在线编译器 还是很好用的,当然你用php4也能干。

4.忽略来自客户端的中止请求


<?PHP
ignore_user_abort();
?>


一般情况下,用户在浏览器中可以按“停止”来停止所有请求,但是这个函数可以忽略用户的操作。

5.高亮语法标记


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


这个其实再做一些特定语法展现时比较有用,它自动会输出 <?php aa() ?>字符串,并显示蓝色代表高亮。

6.highlight_file()高亮文件内容语法标记


<?php
highlight_file("test.php"); 
//这里必须是一个存在的文件名
?>


这个函数会把test.php文件内容加载出来,然后把<?php。。。。 ?>里面的内容进行 高亮展示,很牛逼哦~~~

7.去掉文件中的注释和空格


<?php 
 echo php_strip_whitespace("test.php");
?>


这个函数作用巨大,如果你写完test.php程序后 不想让你的2B同事偷学,你可以用这个函数把去掉注释和空格的程序输出到页面,然后再拷贝回去。好比压缩功能。

8.在服务器端读取客户浏览器版本信息


<?php
echo $_SERVER['HTTP_USER_AGENT'];
 //输出常见的浏览器信息,譬如 Mozilla/5.0 (Windows NT 5.2; rv:26.0) Gecko/20100101 Firefox/26.0
$browser = get_browser(); 
print_r($browser);
?>


注意:browscap.ini文件 请到网上去下载最新,文件里面记录了所有已存在的浏览器的类型及其信息,并在php.ini增加文件指向配置。这个文件可以帮你比较精准的判断用户当前浏览器的版本信息。

9.检查性能和cpu使用效率




试一试便可,可以检查出你写的代码是否 蹂躏了服务器。遗憾的是这些函数不能在windows服务器上使用。(其实很正常嘛)

10.压缩字符串函数


$string =
"这里放一大堆中文字,反正很长很长很长 ";
$compressed = gzcompress($string);//压缩
echo $compressed; //乱码了。是gzip压缩码了
$original = gzuncompress($compressed); 
//解压
echo $original;//正常了


这个功能很有用,譬如你要写一些ajax在客户端和服务端进行无节操交互时,适当用一些这个函数还是很好地。(函数虽好,但是不要乱用哦,过于频繁对服务器性能也是有影响的)

以上就是10个鲜为人知但非常有用的PHP函数的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。