今天看到有人說,在做字串長度判斷的時候,有個比strlen效率更高的方法。
即:$str = 『aaaaaa』;
ifvs(strlen
($str
)>
6)
if晚上自己用例子簡單測試下,情況基本屬實,特此記錄下。(!isset
($str
)
後者效率幾乎是前者的3倍。
具體原因是,在php中,所有的變數都是用乙個結構-zval來儲存的,strlen雖然是直接獲取其中的len,但是仍然有一次函式呼叫,而isset是php的語法結構,所以更快!
示例:
<?輸出:php
//使用strlen方式
$arr
='123456'
;$stime
=microtime(1
);if
(strlen
($arr
)>6)
echo microtime(1
)-$stime
;
0.00035595893859863
<?輸出:php//使用isset($arr{})方式
$arr
='123456'
;$stime
=microtime(1
);if
(!isset
($arr
))echo microtime(1
)-$stime
;
0.00019097328186035
PHP 字串長度判斷效率更高的方法
有經驗的程式設計師發現,php判斷字串長度,使用isset 在速度上比strlen 更快,執行效率更高。即 複製 如下 str aaaaaa if strlen str 6 vsif isset str 用例子簡單測試下,情況基本屬實,isset 效率幾乎是strlen 的3倍。示例 複製 如下 程...
更高效的字串匹配演算法 shift and
在接觸這個演算法之前,一直覺得kmp巧奪天工,利用next陣列的遞推,實現對於模式串任一子串最大相同前字尾的找尋,繼而在匹配目標串的過程中,一旦遇到失配情況,可以令 匹配起始下標 進行合理範圍內最大的跳躍,從而將匹配整體複雜度從o nm 降為o m n a b c a bc.a b c a bk可從...
JS判斷字串長度的5個方法
這篇文章主要介紹了js判斷字串長度的5個方法,並且區分中文和英文,需要的朋友可以參考下 目的 計算字串長度 英文佔1個字元,中文漢字佔2個字元 方法一 如下 string.prototype.gblen function else return len 方法二 如下 function strlen ...