七個很有意思的PHP函數

來源:互聯網
上載者:User

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();

//動手試試輸出的結果
echo php_strip_whitespace(__FILE__); do_nothing();
?>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.