首頁 > 後端開發 > php教程 > 10個鮮為人知但非常有用的PHP函數

10個鮮為人知但非常有用的PHP函數

不言
發布: 2023-03-24 07:56:01
原創
1295 人瀏覽過

這篇文章介紹的內容是關於10個鮮為人知但非常有用的PHP函數,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

# 1.來文史特距離(字串相似性)

<br>
登入後複製
<?php
$str1 = "aaa";
$str2 = "aaab";
echo levenshtein($str1, $str2); //输出2
?>
登入後複製

<br/>

<br/>

#它可以計算出字串str1和字串str2 之間相差幾個字母。這個是php比較特色的函數,因為你用其他語言很可能要自己去實作來文史特距離的矩陣元算。

2.傳回所定義的所有變數的陣列

<br/>
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
<?php
print_r(get_defined_vars());
?>
登入後複製

<br/>

這是一個非常有用的功能,當你想要調試你的程式碼,同時程式碼比較亂忘了定義了哪些變數。它會傳回所定義的所有變數的陣列。放在最後一句~~~

3.檢查你的PHP程式碼語法函數

<br/>
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
<?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";
  }
?>
登入後複製

<br/>

##php_check_syntax 也就是這個函數。不過在php5中被棄用了,否則用php開發一個線上編譯器 還是很好用的,當然你用php4也能幹。

4.忽略來自客戶端的中止請求
<br/>
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
<?PHP
ignore_user_abort();
?>
登入後複製

<br/>

一般情況下,使用者在瀏覽器中可以按「停止」來停止所有請求,但是這個函數可以忽略使用者的操作。

5.高亮语法标记

<br/>
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
<?php
highlight_string(&#39; <?php phpinfo(); ?>&#39;);
highlight_string(&#39;<?php aa();?>&#39;);
?>
登入後複製

<br/>

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

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

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

<br/>

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

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

<br/>
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
<?php 
 echo php_strip_whitespace("test.php");
?>
登入後複製

<br/>

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

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

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

<br/>

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

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

<br/>
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
<br/>
登入後複製

<br/>

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

10.压缩字符串函数

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

<br>

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

以上是10個鮮為人知但非常有用的PHP函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板