一些被忽視的 PHP 函式

2021-05-21 19:48:11 字數 1585 閱讀 6603

真的是不用不知道,其實我們熟悉的 php 還有很多好東西沒有發掘。看到這篇文章 ,當時就淚奔了好幾回,重點推薦下,順便我自己也做個整理。

這個函式 返回當前系統的負載均值資訊 (當然 windows 下不適用),詳細文件可以翻閱 php 的相關文件。文件中有段示例**,基本上也就能看出它的用途了。

ps,如果「很不幸」得你的 php 環境中沒有這個函式,可以考慮使用下面這段**

這一特性如果使用得當,能減輕伺服器部分壓力。

pack 對應的還有個函式為 unpack ,用於壓縮二進位制串,文中的作者的示例非常清楚

如果你使用 php5,那麼可以直接這樣子

這樣做的好處之一是能減少串儲存空間(能節省多少呢?可能又會是另篇文章了)。

這裡還有個示例**可以 pack 陣列

該函式 可以直接返回指定月份中的天數,例如

呃,這的確也是個 php 函式 (也有可能是最短的 php 內建函式)。_() 是它的「小名」,它的大名是 gettext() 。

寫過 wordpress **的朋友會了解 __() 以及 _e() 這些函式,其實 php 早已經自帶了相關的功能。

利用 gettext 可以編寫多語言的應用,現在您感興趣的可能就是如何編寫 locale 檔案,這但已經不是此文涉及的重點,更多資訊可以移步到這裡 。

坦白講,見到這個函式 我當時就徹底淚奔。有了這個函式,再也不用自己去分析 $_server['http_user_agent'] 這個字串了。

更多的資訊可以參考這裡。在使用此函式前,你可能需要個 browscap.ini 配置檔案 ,相信你可以搞定的。

以前檢視函式呼叫堆疊,我會使用 xdebug 等的擴充套件,其實 php5 版本以後已經內建了相關的函式 。

順便再分享個「蛋疼」的小技巧 ,如果你記不住這個函式的名字,可以用這段**同樣能達到目的(看起來還是記住那個函式靠譜):

這個函式用於自然排序 ,這個大家可能都要用到。貼下相關的文件鏈結以及示例**

// normal sorting:

sort($items);

print_r($items);

# outputs:

# array

# (# )

natsort($items);

print_r($items);

# outputs:

# array

# (# )

有關自然排序的演算法規則,可以參考這裡的文件 。

這個函式的功能 同樣讓人感到淚奔,先不說功能直接上示例**

相比你已經了解該函式的用途了,那麼我們就可以有更多的「玩法」,例如就顯示目錄

當然,檔案遞迴你也可以考慮使用下 spl 擴充套件 。

補充 by 神仙 :glob 有個引數選項 glob_onlydir 就可以只列目錄

如果你還在正則驗證字串,那麼就真的「out」了。自 php5.2 版本以後,內建了 php fliter 模組 用於專門驗證 電子郵件、url 等是否合法,示例**:

由於是新生的模組,因此還有很多的陷阱,例如

-- split --

最後,感嘆 php 其實是個歷久彌新的工具,不小心我們就會悲劇性得重複造了只輪子。因此,時常看看 php 文件每次都會有新的收穫。

Android開發中容易被忽視的一些注意事項

一 謹慎選擇包名 包名 package name 就相當於一款應用在戶口本上登記的名字,是系統用來區分不同應用的字段。重複的包名會被認為是同一款應用,不能同時安裝在乙個系統裡。一般來說,包名建議使用網域名稱反序。比如豌豆莢的 網域名稱是 www.wandoujia.com,那麼豌豆莢的一系列 and...

linux 檔案管理中一些被忽視的命令

cd 回到上乙個開啟的目錄 有時需要來回切換目錄進行檔案處理,此時該命令是真的好用 mkdir p zixing 建立多級資料夾 相信好多人都是一級一級建立的吧 mkdir m 711 dir 原來還可以在建立的時候定義許可權,嘿嘿 711的意思在 linux檔案許可權管理 喲 ln s 源 dev...

chinaz站長工具一些很實用但被忽視的功能

chinaz站長工具應該算是中國最老的站長工具了,目前至少80 的seoer都在用它,確實客戶體驗做的很好,準確度高 資訊全面。尤其是改版以後,加入了一鍵查詢和排名變化功能,節約了seoer程式設計客棧的時間。老錢從程式設計客棧剛入行開始,就一直使用chinaz站長工具,其實除了查詢排名 快照 收錄...